第3章 Cocos2D-x中的核心类
Cocos2D-x引擎的设计思路是将游戏的各个部分抽象成几个概念,包括导演、场景、布景层和人物精灵,它们之间的关系如图3-1所示。
几乎任何一款游戏中都会有这些概念,而游戏的复杂程度也就决定这些部分之间的关系的复杂程度。具体说明如下:
导演(CCDirector):顾名思义,导演类是游戏中的组织者和领导者,是整个游戏的负责人、总指挥。导演类可以制定游戏的运行规则,从而让游戏内的场景、布景类和精灵类有序地进行。
场景(CCScene):场景就是一个关卡,或者是一个游戏界面。这样的一个一个场景确定了整个的游戏。
布景层(CCLayer):一个场景可以由多个布景层构成。布景层就是关卡里的背景,关卡不同也就是场景需要的布景层不同。有时候,为了游戏的不同模块的管理更加方便,会把一个场景分为多个布景层,如UI布景层、游戏布景层;有些游戏需要更细致的细分,可以分为游戏对象布景层和游戏地图布景图。
人物精灵(CCSprite):人物精灵可以分为玩家控制的主角类、敌人类;更复杂的游戏可以分为NPC(Non-Player-Controlled Character ,非玩家控制角色)类、机关类等。它们是构成游戏的关键要素。
本章主要介绍这些Cocos2D-x基础类,首先,节点类是场景、布景层、人物精灵的基类,然后分别讲解导演、场景、布景层、人物精灵等。另外由于Cocos2D-x由Cocos2D-iPhone移植而来,很多功能和Objective-C相关,所以移植到C++版本时,涉及一些Objective-C的类别和特性的移植。对于没有使用或学习过Objective-C的开发者来说,这些会有些陌生。本章将在后面介绍这些内容,从而为接下来的学习打下基础。