从本质上说,Cocos2d是一个图形引擎,封装了复杂的图形接口,通过抽象出精灵、动作等概念,降低了游戏开发难度,简化了开发过程。Cocos2d-x为保证游戏能方便地移植到不同平台上,又在此基础上做了很多扩展,包括一套Objective-C风格的基础类系、平台无关的多点触摸协议、重力感应和音频系统等。
接下来,我们将简单介绍一下Cocos2d的特性。
流程控制(flow control):非常容易管理不同场景(scene)之间的流程控制。
精灵(sprite):快速而方便的精灵用于显示一切可见的元素。
节点(node):基于树结构的分层组织方式,方便管理不同层次的游戏元素,同时提供了统一管理的计时器(scheduler)。
动作(action):应用于精灵或其他游戏元素的动画效果,可以组合成复杂的动作,如移动(move)、旋转(rotate)和缩放(scale)等。
特效(effect):包括波浪(wave)、旋转(twirl)和透镜(lens)等视觉特效。
平面地图(tiled map):支持矩形和六边形的平面地图。
菜单(menu):创建游戏中常用的菜单。
用户输入:提供接受用户触摸事件、传感器(如加速度计)等输入的简单解决方案。
文档(document):编程指南、API参考、视频教学以及很多简单可靠的测试样例。
MIT许可:免费开放的协议,但是请谨记尊重版权。
基于OpenGL:深度优化的绘图方式,支持硬件加速。