onEnter() 是在进入场景的一瞬间就开始执行了。
onEnterTransitionDidFinish() 是在完全进入场景后开始执行的。
因为在弄场景的延时跳转,游戏一开始显示公司Logo,然后显示游戏场景界面。
在第一个场景welcomScene的 onEnter() 开始场景跳转的事件。 延时3秒。
void WelcomScene::onEnter()
{
//跳转场景
CCScene* pScene=InverseWarsScene::scene();
CCDirector::sharedDirector()->replaceScene(CCTransitionFade::create(3,pScene));
}
这里要用到播放背景音乐,背景音乐可以在一开始进入场景 onEnter() 时候进行预加载,然后在完全进入场景 onEnterTransitionDidFinish() 的时候开始播放音乐。
void InverseWarsScene::onEnter()
{
//在刚进入界面的时候预加载背景音乐,在inverseWarsScene场景开始播放音乐
CocosDenshion::SimpleAudioEngine::sharedEngine()-> preloadBackgroundMusic("Audio/Background/ChmpSlct_BlindPick.mp3");
}
//在完全进入这个场景后开始执行的事件
void InverseWarsScene::onEnterTransitionDidFinish()
{
//完全进入场景后开始播放音乐
CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic("Audio/Background/ChmpSlct_BlindPick.mp3");
}