cocos2d-x引擎浅析

项目开始了半年左右,半年前经过调研和工具链的准备,决定使用cocos2d-x制作一款2d的rpg游戏。

阅读cocos2d-x源码后,基本了解cocos2d-x的模块以及功能,我们使用的引擎版本为2.0.3。

引擎分为cocos2d、CocosDenshion、Extensions、Box2D、chipmunk、lua等几个project。cocos2d是引擎基础库代码,CocosDenshion是一个跨平台的声音库,Extensions是针对cocosbuilder导出文件的读入封装以及控件扩展和一个简单的http封装,Box2D、chipmunk是2d物理引擎,lua库则是lua绑定封装。

cocos2d-x是cocos2d引擎的c++版本,具备更好的跨平台性,而cocos2d由于使用objective-c编写,只能制作ios的游戏。cocos2d-x的结构如下:


基本结构一目了然,CCDirector做一个引擎的总管理,CCScheduler作为对象update的管理器,渲染以场景为一个整体管理,提供多种场景切换效果,对各平台的渲染、消息响应做了统一封装,提供各种基本2d元素(图片精灵,ttf字体文本,bmfont字体文本,层(layer),菜单,2d粒子,进度条等),可以方便制作一些通用的2d界面和场景。对键盘输入和touch输入做了统一封装。还提供了各种动画的元素(actions),这是cocosbuilder制作动画基础。

Extensions库提供了ccbreader读入cocosbuilder导出的ccbi文件,在工具链上提供了很好的支持。并且提供了button、scrollview等控件扩展,虽然不够完美,但已经很好使用。

CocosDenshion声音库接口很简单,提供背景音乐和音效播放的支持,淡入淡出的切换并没有,这个需要自己扩展。

lua绑定使开发者可以用lua开发游戏,并可以在ios上做到动态更新,可以避免苹果的更新审核周期影响游戏更新的响应速度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值