Cocos2D-X 场景切换效果汇总
来源:未知 责任编辑:责任编辑 发表时间:2013-12-01 14:14 点击:次
Cocos2d-x提供了很多场景间切换的效果,可以方便大家使用。
p>
p>1.使用方法:
p>
p>正常的无过渡场景的如果尚未建立场景(即游戏中的第一个场景),就是用pDirector->runWithScene(pScene);即可以使 用相应场景,如果是替换场景,则使用CCDirector::sharedDirector()->replaceScene(this);替换相 应的场景即可,而如果要使用场景间的切换效果来切换场景,则需要使用相应的切换方法即transitionWithDuration(当然不同效果的使用 方法略有不同)生成相应场景,然后再通过CCDirector::sharedDirector()->replaceScene(this)来启 动场景,也就是说这个给这个场景加了一个外包装,然后再启动,那么,这个场景就不是直接显示了,而是在场景的效果使用完了以后进入场景,起到过渡的效果。
p>
p>一般此函数有两个参数,第一个是特效的切换时间,直接生成一个CCTime即可,例子中设定的时间是1.2s,对于很多场景的显示都很舒服,第二个是要进入的场景,有的会有第三个参数,会在下面介绍
p>
p>2.test中的效果总结
p>
p>CCTransitionJumpZoom::transitionWithDuration(t, s);//跳跃式,本场景先会缩小,然后跳跃进来
p>
p>CCTransitionFade::transitionWithDuration(t, s);//淡出淡入,原场景淡出,新场景淡入
p>
p>CCTransitionFade::transitionWithDuration(t, s, ccWHITE);//如果上一个的函数,带3个参数,则第三个参数就是淡出淡入的颜色
p>
p>CCTransitionFlipX::transitionWithDuration(t, s, kOrientationLeftOver);//x轴左翻
p>
p>CCTransitionFlipX::transitionWithDuration(t, s, kOrientationRightOver);//x轴右翻
p>
p>CCTransitionFlipY::transitionWithDuration(t, s, kOrientationUpOver);//y轴上翻
p>
p>CCTransitionFlipY::transitionWithDuration(t, s, kOrientationDownOver);//y轴下翻
p>
p>CCTransitionFlipAngular::transitionWithDuration(t, s, kOrientationLeftOver);//有角度转的左翻
p>
p>CCTransitionFlipAngular::transitionWithDuration(t, s, kOrientationRightOver);//有角度转的右翻
p>
p>CCTransitionZoomFlipX::transitionWithDuration(t, s, kOrientationLeftOver);//带缩放效果x轴左翻
p>
p>CCTransitionZoomFlipX::transitionWithDuration(t, s, kOrientationRightOver);//带缩放效果x轴右翻
p>
p>CCTransitionZoomFlipY::transitionWithDuration(t, s, kOrientationUpOver);//带缩放效果y轴上翻
p>
p>CCTransitionZoomFlipY::transitionWithDuration(t, s, kOrientationDownOver);//带缩放效果y轴下翻
p>
p>CCTransitionZoomFlipAngular::transitionWithDuration(t, s, kOrientationLeftOver);//带缩放效果/有角度转的左翻
p>
p>CCTransitionZoomFlipAngular::transitionWithDuration(t, s, kOrientationRightOver);//带缩放效果有角度转的右翻
p>
p>CCTransitionShrinkGrow::transitionWithDuration(t, s);//交错换
p>
p>CCTransitionRotoZoom::transitionWithDuration(t, s);//转角换
p>
p>CCTransitionMoveInL::transitionWithDuration(t, s);//新场景从左移入覆盖
p>
p>CCTransitionMoveInR::transitionWithDuration(t, s);//新场景从右移入覆盖
p>
p>CCTransitionMoveInT::transitionWithDuration(t, s);//新场景从上移入覆盖
p>
p>CCTransitionMoveInB::transitionWithDuration(t, s);//新场景从下移入覆盖
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>