Cocos2d-x Scene Transition
Scene
Cocos2d-x scene model is stack model, and LIFO.
Transition type is Push, Pop, Replace.
Example
This is GamePause(PauseMenu).
We need Resume game, Go to Top, and Retry
void Resume(Ref *pSender); void GoToMainMenuScene(Ref *pSender); void Retry(Ref *pSender);
void PauseScreen::GoToMainMenuScreen(cocos2d::Ref *pSender) { auto scene = MainMenu::createScene(); Director::getInstance()->replaceScene(scene); } void PauseScreen::Resume(cocos2d::Ref *pSender) { Director::getInstance()->popScene(); } void PauseScreen::Retry(cocos2d::Ref *pSender) { auto scene = GameScreen::createScene(); Director::getInstance()->popScene(); Director::getInstance()->replaceScene(scene); }
Transition Animation
- TransitionFade
- TransitionFlipX
- TransitionFlipY
- TransitionPageTurn
Example
auto scene = NewScene::createScene(); auto transition = TransitionFade::create(1.0f, scene); //auto transition = TransitionFlipX::create(3, scene); //auto transition = TransitionFlipY::create(3, scene); //auto transition = TransitionPageTurn::create(3, scene, false); Director::getInstance()->replaceScene(transition);