[cocos2dx]抽象元素——CCScene场景类

前端之家收集整理的这篇文章主要介绍了[cocos2dx]抽象元素——CCScene场景类前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在游戏里,场景就是关卡。关卡由人物角色和背景构成。在电影里,场景就是电影中的各种场面,各种场面主要由人物活动和背景等构成。而在Cocos2d-x 引擎中,场景存放的是需要渲染的图层,任务角色和菜单,它可以作为一个整体,一起渲染,一起销毁,一起被场景切换使用。即游戏关卡的实施者,其管理这多个CCLayer,进行场景展现,相关业务逻辑的处理等; 一个场景就是一个界面,定义了所显示的所有角色图层信息。
Scene(场景)是一个抽象的概念,仅被用作Node(节点)的一个子类。Scene(场景)和Node(节点)几乎相同,不同的是Scene的默认锚点在屏幕的中心。现在 scene 没有其它的逻辑,不需要我们做太多的操作及处理,更多的操作处理基本都是在布景层上完成。CCScene 最重要的功能是提供了一组可以在继承类中覆盖的方法

@H_301_21@
  • onEnter 场景开始运行时自动调用方法
  • onExit 场景退出自动调用方法
  • onEnterTransitionFinish 切入当前场景的过渡效果完成后自动调用方法
  • onExitTransitionStart 退出当前场景的过渡效果开始运行时自动调用方法
  • onCleanup 场景清理资源时自动调用方法
  • 一旦在继承类中覆盖了这些方法,那么在相应事件发生时会自动调用上述方法

    场景切换时的事件调用顺序

    从一个场景切换到另一个场景时,会自动调用两个场景对象的 onEnter()、onExit() 等方法。这些方法调用顺序如下:
    从 SceneA 切换到 SceneB(不使用过渡效果):

    @H_301_21@
  • SceneB:onEnter()
  • SceneA:onExit()
  • SceneA:onCleanup()
  • 从 SceneA 切换到 SceneB(使用过渡效果):

    @H_301_21@
  • SceneA:onExitTransitionStart()
  • SceneB:onEnter()
  • SceneB:onEnterTransitionFinish()
  • SceneA:onExit()
  • SceneA:onCleanup()
  • 猜你在找的Cocos2d-x相关文章