目前我在UIViewController中有这段代码:
//Cocos2D methods
-(id) init {
if((self=[super init]))
{
CCScene *scene = [CCScene node];
CCLayer *layer = [CCLayer node];
[scene addChild:layer];
[[CCDirector sharedDirector] runWithScene:scene];
[[CCDirector sharedDirector] setDisplayFPS:NO];
[self performSelector:@selector(cocosgameLoop:) withObject:nil afterDelay:1/60.0f];
}
return self;
}
- (void)cocosgameLoop:(ccTime)dT {
//Check for collisions here and add gravity, etc....
}
- (void)viewDidUnload {
[super viewDidUnload];
[[CCDirector sharedDirector] end];
}
//
我的视图控制器有些是Objective-C代码,但我想将Cocos2D添加到UIView中。我认为上面的代码正在初始化它,但我不确定。 CCScene还应该有自己的类专门用于场景中发生的一切吗?如果是这样我该怎么做? 我知道这些是很多问题,但我的游戏与Doodle Jump非常相似,我需要知道从目前的状态到现在的位置。 有没有人有任何想法/提示?
谢谢!
答案 0 :(得分:1)
performSelector只会调用一次cocosgameLoop。您需要调用CCDirector startAnimation,然后在cocos2d节点中安排更新。
我的Learn Cocos2D book(第2版)解释了如何在UIKit视图(常规iPhone)应用中添加和设置Cocos2D。