天天看点

手游开发你应该了解的游戏引擎——cocos2d-x

国内70%左右的游戏使用的是cocos2d-x,所以国内的手游开发者有必要了解,而Cocos2d-x在国际上也确实是同类工具的佳选。Cocos2d-x项目可以很容易地建立和运行在iOS,Android,黑莓Blackberry等操作系统中。Cocos2d-x还支持Windows、Mac和Linux等桌面操作系统,因此,我们编写的源代码很容易在桌面操作系统中编辑和调试。但是要知道,Cocos2d-X发展的重点是围绕Cocos2d跨平台。

至于这个手游开发阶段的利器多么好多么棒就不多说了,自己了解一下就知道我没夸张。

DevStore的一位大神给想使用该引擎的开发者列举了几个注意的地方:

1、Cocos2d-x引擎采用c++语言编写,该引擎支持c++、Lua和javaScript语言。所以开发者必须有扎实的c++语言或者脚本语言基础。另外,利用引擎开发完整的项目为保持合理的设计,需要有面向对象开发的基础。

2、关于在线更新,与应用程序不同,游戏开发基本有点大量的更新,比如节假日新上线一个活动,更多功能增加啦,都需要更新程序文件。如果使用更新应用程序的安装包的方式,轻者几十MB,重则上百MB的安装包来说,可能一次更新就会流失一大部分玩家。所以我建议如果游戏需要频繁更新的话可以使用Lua脚本语言。笔者就是使用Lua脚本进行开发的2D卡牌游戏,经过近半年的时候,Lua脚本还是比较简单、顺手的。除了一件例外,就是无法断点调试。

3、了解并熟悉Cocos2d-x分为几大模块,分别是物理模块、声音模块、lua脚本模块。其中物理模块采用Box2D/chipmunk开源项目,因此开发者也需要掌握物理引擎。声音采用的cocosDesion。开发者可以根据实际项目需求,添加需要的模块,避免多余模块的添加,造成不必要的内存浪费。

4、对于游戏开始,最大的内存消耗来源于图片资源。因此有必要做好图片资源的优化,能用16位图片的就用16位,采用png格式的图片最佳。图片资源可以使用TexturePacker打包成一张图集。输出采用pvr.ccz格式。

5、作为暴力盈利项目,游戏的安全问题一定不能忽视,否则第二天就会出现山寨版游戏。我建议开发者从以下几个方面考虑:

(1)对于图片资源可以使用TexturePacker的ContentProtection功能,使用32位16进制密码签名。

(2)对于内存数据,为防止八门神器等作弊工具的使用,我们也需要对内存数据加密,可以通过对数据进行MD5等不可逆对比的方式或者利用显示数据并一定对于内存数据的思想进行可逆加密。

以上都是一些皮毛,想要具体了解 cocos2d-x和交流可以到各大论坛的手游开发板块和相关qq群。如果是有兴趣学习的可以先看一下DevStore的Cocos2d-x服务评测,方便你全方位的了解开发过程和功能特色。http://www.devstore.cn/service/serviceDetail/408-69.html