CoCos核心概念:导演、场景、层、节点、精灵、菜单、动作、效果、粒子运动、地图、物理引擎。这里主要介绍导演、场景、层、精灵、菜单概念以及它所对应的类。
导演:
导演Director用于管理场景对象,采用单例模式保存配置信息方便对于场景的管理。获取导演类Director实例语句如下:
auto director = Director::getInstance();
导演对象的职责如下:
(1)访问和改变场景
(2)访问cocos2dx的配置信息
(3)暂停、继续和停止游戏
(4)转换坐标
(5)子类DisplayLinkDirector
场景
场景类scene,场景类大致分为以下几类:
(1)展示类场景,播放视频或简单的在图像上输出文字,实现游戏的开场介绍,胜利和失败提示帮助介绍
(2)选项类场景,包括主菜单、设置游戏参数等
(3)游戏场景、这是游戏的主要内容
层:
类似photoshop中的图层
精灵:
精灵类是游戏中十分重要的概念,他包括敌人、控制对象、静态物体和背景。通常情况下他会进行运动,运动的方式包括,移动,旋转、放大、缩小和动画等。
菜单:
菜单项MenuItem有很多形式的子类,如MenuItemLabel、MenuItemSprite和MenuItemToggle。他表现为不同的效果。每个菜单项有三种基本状态:正常选中和静止
Node与Node层级结构:
Node重要的操作
(1)创建节点
Node *chileNode = Node::create()
(2)增加新的子节点
node->addChild(childNode,0,123);
(3)查找子节点
Node *node = node->getChildByTag(123);
(4)删除子节点,并停止该节点上的一切操作
node->removeChildByTag(123,true);
(5)通过Node指针删除节点
node->removeChild()
(6)删除所有的子节点,并停止这些子节点上操作
node->removeAllChildrenWithCleanUp()
(7)从父节点删除node节点,并停止在该节点上的一切动作
node->removeFromParentAndCleanUp()
Node中重要的属性:position和anchorPoint
position是node对象的实际位置,为了将Node对象(标准的矩形图形)精准放在屏幕的某一个位置,需要设置该矩形的锚点
坐标系
win32平台下设置屏幕