1.1 Cocos2d-x的概述
本节将会向读者介绍Cocos2d-x的一些基础知识,主要包括Cocos2d-x的简介、Cocos2d-x的发展、Cocos2d-x的市场前景以及Cocos2d-x的特点。通过对本节的学习,读者将对Cocos2d-x这款游戏引擎有一个基本的认识和了解,并能够使用其进行简单开发。
1.1.1 Cocos2d-x的发展史
具体介绍Cocos2d-x引擎之前,有必要先对Cocos2d-x引擎的发展史做一个简单的了解。本小节将带领读者走进Cocos2d-x引擎的前世今生,具体内容如下所列。
(1)2008年2月,Cocos2d引擎发布了0.1版(注意不是Cocos2d-x),当时基于Cocos2d引擎开发的游戏并不多,仅有很少数开发人员知道这个引擎的存在。
(2)2008年6月Cocos2d引擎宣布与iPhone平台进行接轨,并在当月公布了用Objective-C编写的Cocos2d for iPhone 0.1版。截至2008年12月,App Store上已有超过40个用Cocos2d引擎开发的游戏。此时还重新设计了引擎的图标,开始使用现在大家熟悉的Cocos2d家族引擎的图标(原来最早的图标是“奔跑的椰子”),如图1-1所示。
图1-1 Cocos家族引擎的图标
(3)2009年,团队设计了Cocos2d的世界编辑器,这款所见即所得的编辑器使用起来十分方便,大大提高了开发效率。此时,Cocos2d的各种平台、各种编程语言移植版也开始涌现,如Cocos2d-Android、CocosNet等。
(4)2010年,具有历史意义的Cocos2d-x诞生了。“x”代表着Cross,即交叉(跨平台)。并在短短的5年内更新了很多版本,如今的最新版是Cocos2d-x-3.9。Cocos2d-x为开发者提供了跨平台的支持,通过C++语言把游戏逻辑一次编写即可编译到iOS、Android以及更多的手机或PC平台上运行。
(5)当下各种不同平台的应用商店里,都拥有大量的基于Cocos2d-x的应用,主要涉及游戏、娱乐应用等应用类型。根据官方数据保守估计,目前流行的2D游戏中有超过70%是采用Cocos2d-x引擎开发的。
1.1.2 Cocos2d-x的市场优势
近几年,随着iOS和Android平台的迅猛发展,智能手机几乎人手一部,因此,手机用户市场需求最终超过传统PC用户是没有悬念的。而智能手机的普及,催生了智能手机软件和游戏的开发。手机软件是满足办公、生活便利的需要,而手机游戏,则是满足休闲、娱乐的需要。
目前的手机游戏还是以2D为主,而在2D方面Cocos2d-x引擎已经做得很好。该引擎基于OpenGL ES,采用GPU进行渲染,大大地提高了游戏运行的流畅度,不仅能开发出酷炫的画面,还能够满足配置稍低的手机流畅运行的需要。下面简单介绍一下Cocos2d-x引擎的优势方面,内容如下所列。
1. 跨平台
此引擎支持Android、iOS、Windows Phone、Linux、Windows、Mac OSX 3等众多平台,开发者可以做到一处开发多处编译,降低了不同平台间移植的成本,提高了其在众多平台间的生存能力。
2. 易于使用
此引擎将学习成本较高的OpenGL ES做了很好的封装,提供了大量的规范,使得游戏开发者可以把关注焦点放在游戏内容本身,而不必消耗大量时间学习晦涩难懂的OpenGL ES。
3. 高效
此引擎基于OpenGL ES进行图形渲染,摆脱了传统2D游戏大多采用CPU进行渲染而导致效能低下的魔咒,一方面提高了游戏的流畅度,另一方面也充分利用了手机中的GPU硬件资源。
4. 灵活
此引擎由于架构设计合理,使得集成第三方库变得非常方便。开发人员在开发中除了可以使用引擎已经集成的第三方库,如Box2D、chupmunk、freetype2等,还可以根据自己项目的需要进一步集成其他第三方库。
5. 开源免费
此引擎的所有源代码完全开放并且免费,用户可以放心使用,不用担心各种繁琐的商业授权问题,降低了开发成本。
正是由于以上几个优点,该引擎已经被全球大多数2D游戏开发人员所采用。基于其开发的游戏总下载量数以亿计,随着智能手机移动平台的进一步发展,Cocos2d-x的明天会更好。