我对 cocos2d 中的场景创建和替换感到困惑,所以我要准确地问一下我似乎误解了什么。我有一个带有一些小游戏的游戏(可悲的是,除了场景交换之外,它可以正常工作),现在,如果我必须从 cocos2d 场景作为菜单开始执行此操作,我不会有任何问题,但是因为我是从UIKit 我真的需要更好地了解场景是如何修复它的。
首先,是否需要在 appDelegate 中启动场景?由于我从 UIkit 开始,并且必须在您选择游戏后显示场景(例如,在 3 个选项中),我应该将哪个场景放入 appDelegate 中?到底在哪里?我将场景放在这种方法中:
-(void) directorDidReshapeProjection:(CCDirector*)director
{
if(director.runningScene == nil)
//start scene
}
如果我放置第一个场景,UIKit 部分运行良好,当我启动“游戏编号 TWO”作为首选时(假设我们首先玩这个游戏)我得到了 Open GL 0x0506 错误,然后场景开始。
如果我放第一个场景,我选择了第一个游戏,然后退出并选择了第二个游戏,场景被正确替换而没有错误。
如果我放置第一个场景,然后启动“游戏编号 1”,它会起作用(显然),因为他已经加载了场景,但我不知道哪个游戏将首先作为用户启动。
我尝试在 appDelegate 加载“介绍场景”,但遇到了同样的问题。问题基本上是“如果您有多个场景并且不知道哪个场景将被称为第一个场景,如何开始场景”......