问题如下:
如果直接在AppDelegate.cpp中执行:
auto scene = GameLayer::createScene();
// run
director->runWithScene(scene);
则游戏主场景
SpriteFrameCache::getInstance()->addSpriteFramesWithFile(“panda.plist”);
SpriteFrameCache::getInstance()->addSpriteFramesWithFile(“enemy.plist”);
//添加敌人1.
enemy1 = Enemy::createWithEnemyTypes(EnemyType4);
enemy1->setVelocity(Vec2(0, -1));
this->addChild(enemy1, 10, GameSceneNodeBatchTagEnemy);
精灵可以正常显示,
但是如果AppDelegate.cpp里面是先创建HelloWorldScene,
再在HelloWorldScene中通过一个菜单回调创建GameScene时,
auto scene = HelloWorld::createScene();
director->runWithScene(scene);
void HelloWorld::menuCloseCallback(Ref* pSender)
{
Scene* tsc = TransitionFade::create(1.0f, GameLayer::createScene());
if (tsc)
Director::getInstance()->pushScene(tsc);
// Director::getInstance()->end();
}
游戏场景就无法显示精灵,什么都没有。
求各大神帮忙如何解决,我是新手来着;
我在想是不是引擎本身的优化设计问题,对于暂时用不到的精灵对象引擎会不会自动延迟创建,直到有事件响应关联到精灵对象时才会真正开始创建???