cocos2d-x开发 之 场景切换方式与特效

cocos2d-x中有三种常用的场景切换方式:replaceScene,pushScene,popScene

 

当然还有一些其他的方式:

runWithScene(Scene* scene)。该函数可以运行场景。只能在启动第一个场景时候调用该函数。如果已经有一个场景运行情况下则不能调用该函数。

replaceScene(Scene* scene)。切换到下一个场景。用一个新的场景替换当前场景,当前场景被终端释放。

pushScene(Scene* scene)。切换到下一个场景。将当前场景挂起放入到场景堆栈中,然后再切换到下一个场景中。

void popScene()。与pushScene配合使用,可以回到上一个场景。

void popToRootScene()。与pushScene配合使用,可以回到根场景。

void pause()。   暂停当前的场景

void resume() 。   恢复被暂停的当前场景

void end()。      终止执行,释放当前的场景

如何使用:

  Director::getInstance()->replaceScene(FightScene::CreateScene());//切换到打斗场景
  Director::getInstance()->pushScene(FightScene::CreateScene());    //原场景不卸载,切换到打斗场景
  Director::getInstance()->popScene();//删除栈上的场景,回到原来的场景

 

场景切换特效:

TransitionFade(淡入淡出效果)

TransitionFadeBL(从右上到左下消失)

TransitionFadeTR(从左下到右上消失)

TransitionCrossFade(对象交替呈现)

TransitionFadeDown(从上到下百叶窗效果)

TransitionFadeUp(从下到上百叶窗效果)

TransitionFlipAngular(轻弹效果的翻转)

TransitionFlipX(水平翻转)

TransitionFlipY(垂直翻转)

TransitionJumpZoom(跳跃试效果)

 Director::getInstance()->replaceScene(TransitionFadeUp::create(1.2f,FightScene::CreateScene()));    //使用特效切换到打斗场景

参考:https://blog.csdn.net/qq_33850438/article/details/52313367

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值