我有一個基於UIButtons的UIKit菜單,當我點擊其中的一個時,我發射了一個cocos2D場景。我在AppDelegate中建立CCDirector:從UIKit菜單重新啓動cocos2d的場景
if(! [CCDirector setDirectorType:kCCDirectorTypeDisplayLink])
[CCDirector setDirectorType:kCCDirectorTypeDefault];
CCDirector *director = [CCDirector sharedDirector];
[director setAnimationInterval:1.0/60];
[director setDisplayFPS:YES];
[CCTexture2D setDefaultAlphaPixelFormat:kCCTexture2DPixelFormat_RGBA8888];
,並在RootViewController的(中的viewController即會擁有我的EAGLView)我這樣做是在viewDidLoad方法:
glView = [EAGLView viewWithFrame:self.view.bounds
pixelFormat:kEAGLColorFormatRGBA8
depthFormat:0
];
glView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
[self.view insertSubview:glView atIndex:0];
[[CCDirector sharedDirector] setOpenGLView:glView];
CCScene *scene = [GameScene sceneWithParent:self];
[[CCDirector sharedDirector] runWithScene:scene];
我」 m在MainMenuViewController中設置我的菜單,從那裏我推動導航控制器的堆棧中的RootViewController。這工作完美,我的遊戲開始沒有問題。我也可以從RootViewController(擁有cocos2d場景)回來一個UIButton:- (IBAction)goBack { [self.navigationController popViewControllerAnimated:YES]; [[CCDirector sharedDirector] end];}
但是當我嘗試重新加載我的遊戲場景時,應用程序退出。我試過這種方法: restart CCDirector但徒然!我試圖暫停CCDirector並重新開始動畫,但也是徒勞的,我得到的錯誤是關於cocos2d的繪製方法! 請幫忙