cocos2d-x  简介

Hanrea 发表于 2017-4-13 13:55:45 | 显示全部楼层 |阅读模式 [复制链接]
0 254
概述
EngineBUS enginebus EngineBUS enginebusCocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C++ Cocos2d-iPhone项目的版本。Cocos2d-X发展的重点是围绕Cocos2d跨平台,Cocos2d-x提供的框架。手机游戏,可以写在C++或者Lua中,使用API是Cocos2d-iPhone完全兼容。Cocos2d-x项目可以很容易地建立和运行在iOS,Android,黑莓Blackberry等操作系统中。Cocos2d-x还支持WindowsMacLinux等桌面操作系统,因此,开发者编写的源代码很容易在桌面操作系统中编辑和调试。
EngineBUS enginebus EngineBUS enginebus
EngineBUS enginebus EngineBUS enginebus

EngineBUS enginebus EngineBUS enginebus基本介绍

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

EngineBUS enginebus特点

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus家族成员

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus历史起源作者简介

1973年,Ricardo Quesada出生于阿根廷。

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebusCocos2d的诞生

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

EngineBUS enginebus

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

EngineBUS enginebus主要功能

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

BSD许可:尽管用就是了

EngineBUS enginebus

基于Pyglet:没有外部的依赖

EngineBUS enginebus

基于OpenGL:支持硬件加速

EngineBUS enginebus架构和目录结构

架构:

EngineBUS enginebus

目录结构:

EngineBUS enginebus

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

EngineBUS enginebus

目录名称

EngineBUS enginebus

说明

EngineBUS enginebus

CocosDenshion

EngineBUS enginebus

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

EngineBUS enginebus

cocos2d-x

EngineBUS enginebus

Cocos2d-x框架的主目录。

EngineBUS enginebus

document

EngineBUS enginebus

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

EngineBUS enginebus

extensions

EngineBUS enginebus

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

EngineBUS enginebus

external

EngineBUS enginebus

包括box2d及Chipmunk库。

EngineBUS enginebus

licenses

EngineBUS enginebus

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

EngineBUS enginebus

samples

EngineBUS enginebus

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

EngineBUS enginebus

scripting

EngineBUS enginebus

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

EngineBUS enginebus

template

EngineBUS enginebus

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

EngineBUS enginebus

tools

EngineBUS enginebus

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

EngineBUS enginebus

CHANGELOG

EngineBUS enginebus

作者修订记录文档。

EngineBUS enginebus

cocos2d-win32.vc2010.sln

EngineBUS enginebus

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

EngineBUS enginebus

cocos2d-win32.vc2012.sln

EngineBUS enginebus

配套Visual Studio 2012打开。

EngineBUS enginebus

create-android-project.bat

EngineBUS enginebus

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

EngineBUS enginebus

create-android-project.sh

EngineBUS enginebus

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

EngineBUS enginebus

install-templates-msvc.bat

EngineBUS enginebus

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

EngineBUS enginebus

install-templates-xcode.sh

EngineBUS enginebus

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

EngineBUS enginebus
市场地位

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus

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

EngineBUS enginebus
EngineBUS enginebus EngineBUS enginebus
EngineBUS enginebus EngineBUS enginebus
您需要登录后才可以回帖 登录 | Sign Up

本版积分规则

推荐阅读

QQ| Archiver|手机版|小黑屋| 引擎巴士 EngineBUS  

Powered by Discuz! X3.2© 2001-2013 Comsenz Inc.  

返回顶部 返回列表