cocos2D-x

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、Mac和Linux等桌面操作系统,因此,开发者编写的源代码很容易在桌面操作系统中编辑和调试。

中文名 cocos2d-x 类    型 开源的移动2D游戏框架 发展重点 跨平台 支持平台 iOS,Android等


基本介绍编辑

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

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

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

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

cocos2d-x

cocos2d-x

特点

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

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

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

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

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

家族成员

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

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

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

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

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

历史起源

作者简介

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。[4]

主要功能编辑

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

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

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

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

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

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

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

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

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

BSD许可:尽管用就是了

基于Pyglet:没有外部的依赖

基于OpenGL:支持硬件加速[3]

架构和目录结构编辑

架构:

cocos2d-x引擎架构

cocos2d-x引擎架构

目录结构:

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

目录名称

说明

CocosDenshion

音频支持。注意:Android平台中背景音乐和短音效所使用的系统API不同。

cocos2d-x

Cocos2d-x框架的主目录。

document

你可以下载doxygen文档系统,利用该系统打开本文档文件夹内的doxygen.config文件,然后再生成离线API文档。

extensions

如果需要更多图形用户界面的控制功能、网络访问、CocosBuilder支持甚至2.5D功能,你可以使用using namespace cocos2d::extension。

external

包括box2d及Chipmunk库。

licenses

cocos2d依赖很多其他开源项目。所有授权许可文件都在这个目录。

samples

重要!这是你该开始用到的文件。从Cpp/HelloCpp开始学习,你会在TestCpp中发现所有类的用法。lua和js样本也在这个目录。

scripting

我知道你不喜欢C++,写起来太复杂。没问题,我们有Lua和Javascript。Scripting文件夹包括来自火狐的lua官方引擎和SpiderMonkey引擎。

template

该目录包括在不同集成开发环境及不同平台中创建Cocos2d-x新项目的模板。这里汇集了数量庞大覆盖各种开发环境和平台的模板!

tools

包括将C++绑定至lua及javascript的脚本文件。

CHANGELOG

作者修订记录文档。

cocos2d-win32.vc2010.sln

配套Visual Studio 2010打开。注意:VS 2008自Cocos2d-x v2.0版本以来就不再支持。

cocos2d-win32.vc2012.sln

配套Visual Studio 2012打开。

create-android-project.bat

在Windows平台运行。具体用法请参考如何用脚本创建Android项目。

create-android-project.sh

在Linux或OS X平台运行。具体用法请参考如何用脚本创建Android项目。

install-templates-msvc.bat

执行该文件安装后,你可以在Visual Studio中创建空的Cocos2d-x项目。

install-templates-xcode.sh

执行该文件安装后,你可以在Xcode中创建空的Cocos2d-x项目。

市场地位编辑

目前,占有率领先移动游戏引擎主要有Cocos2d-x、Unity3D、FlashAIR、Unreal、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开发。[2-3]

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269

推荐阅读更多精彩内容