Cocos2d-x之场景切换

在很多RPG游戏中大部分存在多个场景,如开始的欢迎界面、菜单界面、战斗界面、、、、、,

场景切换只需要调用CCDirector::sharedDirector()->replaceScene(s); s为新的场景,这句代码的是含意,是用新的场景s去替换掉旧的场景,但是这样的场景替换,来得太突然,给用户的感觉不太好,我们需要一种更好更自然的替换方式。

如何在这些场景切换中显得更加自然,在Cocos2d-x中封装好了这些场景切换类

CTransitionJumpZoom::create(t, s)                                     原场景先缩小,然后新场景跳跃进入
CTransitionProgressRadialCCW::create(t, s)                    
CTransitionProgressRadialCW::create(t, s)      
CTransitionProgressHorizontal::create(t, s)
CTransitionProgressVertical::create(t, s)
CTransitionProgressInOut::create(t, s)
CTransitionProgressOutIn::create(t, s)
CTransitionCrossFade::create(t,s)
CCTransitionFadeTR::create(t, s)
CCTransitionFadeBL::create(t, s)
CCTransitionFadeUp::create(t, s)
CCTransitionFadeDown::create(t, s)
CCTransitionTurnOffTiles::create(t, s)
CCTransitionSplitRows::create(t, s)
CCTransitionSplitCols::create(t, s)
CCTransitionFade::create(t, s)
CCTransitionShrinkGrow::create(t, s)
CCTransitionRotoZoom::create(t, s)
CCTransitionMoveInL::create(t, s)
CCTransitionMoveInR::create(t, s)
CCTransitionMoveInT::create(t, s)
CCTransitionMoveInB::create(t, s)
CCTransitionSlideInL::create(t, s)
CCTransitionSlideInR::create(t, s)
CCTransitionSlideInT::create(t, s)
CCTransitionSlideInB::create(t, s)

第一个参数是动画的时间(flaot类型),单位是秒,第二个参数是新的场景,可以去过相应的需求选择上面的动画

CCDirector::sharedDirector()->replaceScene(CCTransitionSlideInL::create(t,s));

这样就完成了场景的动态切换


总得来说,动态的场景替换,分为三步:

1、创建一个新的场景

2、创建场景替换动画

3、替换旧的场景


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值