您的位置:首页 > 移动开发 > Cocos引擎

从头开始学cocos2dx笔记之五(总体印象)

2013-12-19 01:54 351 查看
环境搭建好当然就是学引擎本身了。不过学也有学法,看英文不见得是最优。我在网上找到本教材:cocos2dx高级开发教程,感觉很不错。看了这本书,基本对cocos2dx有个大致的了解了。这几天走马观花的读了一下,基本上对cocos2dx有以下印象:

1 因为跨平台的需要和很多其他原因,cocos2dx编程需要尽量遵循一定的语法规范,比如:

构造函数要用init()或者其他creat()之类

并且某些库需要用cocos2dx的库,比方说容器,STL不能用

需要用函数指针的地方最好用cocos2dx的选择器

需要谨慎使用retain()release()来利用cocos2dx的引用计数内存管理(但是象对象池之类的技巧也是需要的)

2 程序入口需要有4个实现:初始化后 回后台 回前台 结束。这几个接口应该主要处理程序在移动设备上遇到的突发事件,比方说接电话。

2 cocos2dx分为 场景 层 精灵3个布局层次。那个导演类个人感觉应该看成整个引擎的入口来理解更为合适。

3 场景组织采用树和节点,这一点和OGRE很象。

4 定时器分为update和schedule。update其实就是个节点每帧都被调用的函数,schedule才是传统理解上的定时器。。

5 action类可以实现部分动态效果。包括:放置、反转、显示与隐藏;直线运动、曲线运动、缩放、旋转、淡入淡出、透明度、色调;闪烁 帧动画等,还包括延迟

重复、变速等。感觉这个ACTION类包罗万象,一些看上去就是属性的设置都放进这个类里面来了。对于一些更复杂的动作,可以自定义。比如需要结合物理引擎的时候。COCOS2DX推荐使用BOX2D。

6 cocos2dx音效引擎:cocosDenshion,已经集成,需要用的时候需要包含对应头文件。SimpleAudioEngine.h

7 用户输入方面cocos2dx更关注触摸输入,使用层内建的触摸出入即可,只需要实现4个有关触摸的的方法。也可以自己写个类来注册接受触摸事件。

8 cocos2dx支持加速度计,这让我想起了以前我手机上的小球过迷宫游戏。

9 文字输入使用一个特殊的控件 CCTextFieldTTF。

10 cocos2dx有自己的粒子系统CCParticleSystem。

11 支持TILEMAP。(Tiled Map Editor制作并保存的TMX格式地图)

12 cocos2dx可以使用openGL es底层接口,实现更为强大的渲染结果(感觉象OGRE的顶点渲染)。引擎已经封装了一些接口(着色器)

13 使用CCUserDefault实现序列化。也可以考虑CCFileUtil,XML,JSON以及SQLITE。

14 引擎自带个网络传输库CURL,推荐使用HTTP传输。

15 cocos2dx是单线程,但推荐使用pthread实现多线程。

回过头来看cocos2dx引擎,如果不考虑引擎集成的其他库,cocos2dx的核心就是 场景 层 精灵 节点 动作 触摸 粒子以及着色器。所以理解这些方面基本也把cocos2dx摸得7788了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: