Cocos2d-x中的基础概念学习笔记 分类: cocos2d代码编写 2015-07-27 17:08 5人阅读 评论(0) 收藏

Cocos2d-x的核心类为 Scene, Node, Sprite, Menu和Action对象。
Cocos2d-x使用Director(导演)的概念。是的,就像拍电影一样!


Director类控制着游戏整体并通知游戏接下来需要做什么。


把你自己当成影片的监制人,你肯定会通知导演(Director)该如何做!


Director导演的一个通常作用是控制Scene 切换和切换效果。


导演(Director)是一个共享的单例对象,你可以从代码的任何地方调用。


场景都由Renderer进行绘制。Renderer可以用来绘制精灵或者其它对象到场景中。


_scene graph_是一个用来存储场景图形的数据结构。


_scene graph_由树节点构成。(它虽然叫screne graph,但它实际上是用树形结构来存储)。


由于_Scene Graph_是树形结构;你可以对它进行遍历。Cocos2d-x使用了_in-order walk_算法。_in-order walk算法的流程如图所示,从根节点开始,然后到右边的树。由于右边的节点是最后绘制的,所以它会首先被显示到场景中。


另一个需要注意的地方是,_z-order_Z轴为负数的元素会出现在树的左侧,而_z-order_Z轴为正数的会出现在树的右侧。


当在场景中添加结点的时候需要注意这一点。当然你可以在任意的地方添加节点元素它们会被按钮Z轴的大小自动排序。






对象。


你可以操纵它们。精灵可能是游戏中最主要的角色。我知道你在想什么-难道每一个图形对象都是精灵Sprite吗?


当然不是!为什么?当你操纵一个精灵的时候,它就是一个精灵。如果你不对它进行操作,那它就是一个节点Node。






精灵是每一个游戏的关键所在。编写一个游戏,你可能需要使用一些带有共同特性的图像。这就是一个Sprite精灵。


_Sprites_精灵很容易创建,它具有很多属性,比如:坐标position,翻转rotation,缩放scale,透明度opacity,颜色color等。


通过代码 mySprite->setPosition(Vec2(500, 0));将坐标进行重新设置


通过代码mySprite->setRotation(40);对精灵的翻转进行设定


通过代码mySprite->setScale(2.0);将精灵进行缩放


通过代码mySprite->setAchorVec2(0, 0);将游戏中的精灵锚点设定为(0,0)坐标,那么所有使用代码setPosition()进行坐标设定的精灵都会以自身的左下角来进行对齐






,一个序列Sequence就是多个动作按钮一定顺序进行排列。需要按反方向来播放序列动作?也没问题,Cocos2d-x也支持这个操作


如何同步一起运行这些动作?Cocos2d-x也支持这个操作,它称做Spawn。Spawn会在同一时间播放所有指定的动作。有一些可能比别的稍长一些,所以出现这种情况动作的播放不会在同一时间完成。

版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-07-27 17:08  leansmall  阅读(123)  评论(0编辑  收藏  举报