cocos2d-x :MIT许可证下发布的游戏框架

更新时间:2024-09-20 20:30

Cocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C++ Cocos2d-IPhone项目的版本。Cocos2d-X发展的重点是围绕Cocos2d跨平台,Cocos2d-x提供的框架。手机游戏,可以写在C++或者Lua中,使用API是Cocos2d-iPhone完全兼容。Cocos2d-x项目可以很容易地建立和运行在iOS,Android,黑莓Blackberry等操作系统中。Cocos2d-x还支持Windows、麦金塔Linux等桌面操作系统,因此,开发者编写的源代码很容易在桌面操作系统中编辑和调试。

引擎介绍

Cocos2d-x是MIT许可证下发布的开源游戏引擎,游戏开发快速、简易、功能强大。2015年2月,触控科技正式推出了游戏开发一站式解决方案cocos,将Cocos 2d-x、Cocos Studio、Cocos Code IDE等框架及工具整合在一起。

Cocos2d-x核心优势在于允许开发人员利用C++、Lua及ECMAScript来进行跨平台部署,覆盖平台包括iOS、Android、Windows Phone、Windows, Mac OSX 3及Tizen等等,省事省力省成本。

Cocos2d-x用户不仅包括个人开发者和游戏开发爱好者,还包括许多知名大公司如ZyngaWoogaGAMEVILGLU、GREE、科乐美、TinyCo、handygames、IGG及迪士尼公司 Mobile等。截止2013年9月,全球基于Cocos2d-x引擎的游戏下载量高达逾15亿,其中许多还占据苹果应用商店(AppStore)和谷歌应用商店(Google Play)排行榜。同时许多公司如触控、谷歌、微软、ARM、英特尔的工程师在Cocos2d-x领域也非常活跃。

另外,Cocos2d-x版本升级困难的问题,是许多开发者的一大苦恼,而经过整合的cocos,解决了Cocos2d-x的这一问题。升级cocos,其相匹配的Cocos2d-x也将自动进行升级,这极大的提高了开发效率,为开发者们带来便利,同时也为Cocos2d-x的进一步发展打下基础。

特点

易于使用:游戏开发者可以把关注焦点放在游戏设置本身,而不必消耗大量时间学习晦涩难懂的OpenGL ES,此外,Cocos2d-x还提供了大量的规范。

高效:Cocos2d-x基于OpenGL ES进行图形渲染,从而让移动设备的GPU性能发挥到极致。

灵活:方便扩展,易于集成第三方库。

免费:基于MIT协议的免费开源框架,用户可以放心使用,不用担心商业授权的问题。

社区支持:关心Cocos2d-x的开发者自发建立了多个社区组织,可以方便的查阅各类技术资料。

家族成员

Cocos2d是一个基于MIT协议的开源框架,用于构建游戏、应用程序和其他图形界面交互应用。可以让你在创建自己的多平台游戏时节省很多的时间。

Cocos2d也拥有几个主要版本,包括Cocos2d-IPhone、Cocos2d-X,以及被社区普遍看好的Cocos2d-html5ECMAScript bindings for Cocos2d-X。

Cocos2d-html5 : Cocos2d-HTML5 是基于 HTML5 规范集的 Cocos2d引擎分支,具有跨平台的能力和强大的性能,是 Cocos2d 系列引擎随着互联网技术演进而产生的一个分支,该分支基于 HTML5 规范集,目标是可对游戏进行跨平台部署,Cocos2d-HTML5 采用 MIT 开源协议,设计上保持Cocos2d家族的传统架构,并可联合 Cocos2d-x ECMAScriptbinding 接口,最大程度地实现游戏代码在不同平台上的复用。

JSB :Cocos2d-x JavaScript-binding 是使用 SpiderMonkey 引擎实现 C++ 接口到 JavaSciprt 的绑定方案,它可以使用 Js 快速开发游戏,以更简单的语法实现功能,并且能与 Cocos2D-html5 相互兼容,使同一套代码,运行两个平台,这是相比使用 Lua 实现的一个明显优势。

Cocos Studio :Cocos Studio 是一套基于 Cocos2d-x 引擎的工具集,包括 UI编辑器,动画编辑器,场景编辑器和数据编辑器。 UI 编辑器和动画编辑器主要面向美术,而场景编辑器和数据编辑器则面向游戏策划,这四个工具合在一起构成了一套完整的游戏开发体系,帮助开发者进一步降低开发难度,提高开发效率,减少开发成本。

历史起源

作者简介

1973年,Ricardo Quesada出生于阿根廷

在Ricardo 12岁时,他母亲为他购买了第一台电脑,一台Commodore 64。

刚开始,与其他孩子一样,Ricardo将自己的精力放在电子游戏上,但在几个月后,他购买了编程方面的书籍,开始学习用BASIC语言编写一些简单的游戏。两年后,Ricardo开始学习汇编语言

在Commodore 64上,Ricardo制作了很多游戏并贡献了一个游戏编辑器,而这台Commodore 64也陪伴了他长达6年之久。此后,Ricardo选择了iAPX 286作为他的新伙伴。在他学习了c语言后的几个月,Ricardo在DOS系统下编写了一些游戏Demo和一个游戏编辑器。

当然,他并不满足于此,随后Ricardo又开始涉足Linux,并将编辑器移植到Linux系统上,将汇编语言改成了C语言。Ricardo将Linux作为主要的操作系统用了很多年,并不断地为开源社区贡献代码。此后他与一些志同道合的朋友一起学习了C++以及Python语言,并参加了一些开发大赛。在大学期间,Ricardo选择了钟爱的计算机科学专业,并不断涉猎计算机安全、算法、游戏架构、OpenGL等大量书籍。

Cocos2d的诞生

2005年,Ricardo和朋友萌生了用Python语言“一星期编写一个游戏”的想法。在2005~2007年间,他们设计了许多种这样的游戏。值得注意的是,每次在设计一个新的游戏时,其游戏引擎都是重新开发的。

2008年2月,他们在阿根廷Córdoba市附近的Los Cocos,决定基于以前的开发经验,把技术进行整合,并组建了游戏引擎的原始开发团队。一个月后,第一版的游戏引擎诞生了,根据其诞生地取名为Los Cocos。一个月后Los cocos引擎发布了0.1版,其名称从Los Cocos更名为Cocos2d。

主要功能

流程控制(Flow control):非常容易地管理不同场景(scenes)之间的流程控制

精灵(Sprites):快速而方便的精灵

动作(Actions):告诉精灵们该做什么。可组合的动作如移动(move)、旋转(rotate)和缩放(scale)等更多

特效(Effects):特效包括波浪(waves)、旋转(twirl)和透镜(lens)等更多

平面地图(Tiled Maps):支持包括矩形和六边形平面地图

转换(Transitions):从一个场景移动到另外一个不同风格的场景

菜单(Menus):创建内部菜单

文本渲染(Text Rendering):支持标签和HTML标签动作

文档(Documents):编程指南 + API参考 + 视频教学 + 很多教你如何使用的简单测试例子

BSD许可:尽管用就是了

基于Pyglet:没有外部的依赖

基于OpenGL:支持硬件加速

架构目录结构

架构:

目录结构:

GitHub下载Cocos2d-x repo资源包后,或解压稳定版ZIP压缩包后,就会看到如下的目录结构:

市场地位

目前,占有率领先移动游戏引擎主要有Cocos2d-x、Unity3D、FlashAIR、虚幻引擎、Corona等。不同的统计方给出的数据各有差异,但总体来讲,行业首选的游戏引擎,主要都集中在Cocos2d-x与Unity3D之上。

从全球市场份额数据来看,主要覆盖中端市场的Unity相对领先,Cocos2d-x则主要占据高端与低端市场,约占1/4市场。但值得注意的是另一个数据是,在中国,Cocos2d-x则相对领先。在中国的2D手机游戏开发中,Cocos2d-x引擎的份额超过70%。

根据触控科技数据,国内现有45款月收入超千万手游中,30个基于Cocos2d-x开发,2013年手机游戏产业的22起手游并购案中,收购股权大于51%20起,其中13起的代表游戏均基于Cocos2d-x开发。

注:截至2013年12月10日数据更新,国内已有47款月收入超千万手游,其中32款基于Cocos2d-x开发。

财力支持

目前,Cocos2d-x, Cocos2d-html5及Cocos Studio由触控科技提供财力支持。

参考资料

CocoaChina开发者大会:Cocos2d的多维展开.网易新闻网.2013-09-28

Cocos2D家族的前世今生.新浪.2015-05-31

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}
友情链接: