Cocos2d游戏引擎基础入门
1. Cocos2d游戏引擎架构概述
Cocos2d游戏引擎在管理和呈现游戏对象的方式上独具特色。为了更好地使用该引擎,我们需要先了解其各个组成元素以及它们之间的协作方式。
2. Cocos2d场景图
场景图有时也被称为场景层次结构,它是当前活跃的所有Cocos2d节点的层次结构。Cocos2d节点是从CCNode类派生的任何对象。像CCSprite和CCLabelTTF这样的大多数节点会在屏幕上显示,而CCNode、CCScene和CCLayer等少数节点则没有视觉表示,但它们同样重要,常让新开发者感到困惑。
在一个射击游戏场景中,表面上看场景完全由CCSprite对象构成,但实际上CCScene和CCLayer类用于对各种精灵(如多个背景层、玩家飞船、敌人、子弹、虚拟手柄和按钮)进行分组和排序。通常,场景会使用多个层来维护精灵的绘制顺序,例如背景层、游戏对象层和虚拟手柄层。使用多层的好处很多,比如可以隐藏整个层的节点、移动层及其包含的所有节点、重新排序层,还能对层进行旋转和缩放,这些操作会作用于层内的所有节点。
每个节点可以有其他节点作为子节点,除场景本身外,每个节点都有一个父对象。需要注意的是,节点的父子关系与面向对象编程中的继承不同,父节点并非节点的超类。这种节点的树状层次结构就是场景图,也可称为节点层次结构,熟悉编程设计模式的人会发现这是组合设计模式。
虽然Cocos2d并不强制使用场景/层/节点结构,但场景图的根节点始终是CCScene类对象。实际上,为了进行分层和分组对象,使用普通的CCNode类可能比CCLayer类更好,因为CCLayer类在处理输入(如Mac OS
Cocos2d游戏引擎基础入门指南
超级会员免费看
订阅专栏 解锁全文
59

被折叠的 条评论
为什么被折叠?



