cocos2D-x

Cocos2d-x是一個開源的移動2D游戲框架唾糯,MIT許可證下發(fā)布的合搅。這是一個C++ Cocos2d-iPhone項目的版本湃密。Cocos2d-X發(fā)展的重點是圍繞Cocos2d跨平臺概漱,Cocos2d-x提供的框架蝌焚。手機游戲,可以寫在C++或者Lua中号杏,使用API是Cocos2d-iPhone完全兼容婴氮。Cocos2d-x項目可以很容易地建立和運行在iOS,Android,黑莓Blackberry等操作系統(tǒng)中主经。Cocos2d-x還支持Windows荣暮、Mac和Linux等桌面操作系統(tǒng),因此罩驻,開發(fā)者編寫的源代碼很容易在桌面操作系統(tǒng)中編輯和調(diào)試穗酥。

中文名 cocos2d-x 類? ? 型 開源的移動2D游戲框架 發(fā)展重點 跨平臺 支持平臺 iOS,Android等


基本介紹編輯

Cocos2d-x是MIT許可證下發(fā)布的開源游戲引擎惠遏,游戲開發(fā)快速迷扇、簡易、功能強大爽哎。2015年2月,觸控科技正式推出了游戲開發(fā)一站式解決方案cocos器一,將Cocos 2d-x课锌、Cocos Studio、Cocos Code IDE等框架及工具整合在一起祈秕。[1]

Cocos2d-x核心優(yōu)勢在于允許開發(fā)人員利用C++渺贤、Lua及Javascript來進行跨平臺部署,覆蓋平臺包括iOS请毛、Android志鞍、Windows Phone、Windows, Mac OSX 3及Tizen等等方仿,省事省力省成本固棚。[2]

Cocos2d-x用戶不僅包括個人開發(fā)者和游戲開發(fā)愛好者,還包括許多知名大公司如Zynga仙蚜、Wooga此洲、Gamevil、Glu委粉、GREE呜师、Konami、TinyCo贾节、HandyGames汁汗、IGG及Disney Mobile等。截止2013年9月栗涂,全球基于Cocos2d-x引擎的游戲下載量高達逾15億知牌,其中許多還占據(jù)蘋果應用商店(AppStore)和谷歌應用商店(Google Play)排行榜。同時許多公司如觸控戴差、谷歌送爸、微軟、ARM、英特爾的工程師在Cocos2d-x領域也非诚В活躍墨吓。

另外,Cocos2d-x版本升級困難的問題纹磺,是許多開發(fā)者的一大苦惱帖烘,而經(jīng)過整合的cocos,解決了Cocos2d-x的這一問題橄杨。升級cocos秘症,其相匹配的Cocos2d-x也將自動進行升級,這極大的提高了開發(fā)效率式矫,為開發(fā)者們帶來便利乡摹,同時也為Cocos2d-x的進一步發(fā)展打下基礎。

cocos2d-x

cocos2d-x

特點

易于使用:游戲開發(fā)者可以把關注焦點放在游戲設置本身采转,而不必消耗大量時間學習晦澀難懂的OpenGL ES聪廉,此外,Cocos2d-x還提供了大量的規(guī)范故慈。

高效:Cocos2d-x基于OpenGL ES進行圖形渲染板熊,從而讓移動設備的GPU性能發(fā)揮到極致。

靈活:方便擴展察绷,易于集成第三方庫干签。

免費:基于MIT協(xié)議的免費開源框架,用戶可以放心使用拆撼,不用擔心商業(yè)授權的問題容劳。

社區(qū)支持:關心Cocos2d-x的開發(fā)者自發(fā)建立了多個社區(qū)組織,可以方便的查閱各類技術資料情萤。[3]

家族成員

cocos2d是一個基于MIT協(xié)議的開源框架鸭蛙,用于構建游戲、應用程序和其他圖形界面交互應用筋岛∪⑹樱可以讓你在創(chuàng)建自己的多平臺游戲時節(jié)省很多的時間。

Cocos2d也擁有幾個主要版本睁宰,包括Cocos2d-iPhone肪获、Cocos2d-X,以及被社區(qū)普遍看好的Cocos2d-HTML5和JavaScript bindings for Cocos2d-X柒傻。

Cocos2d-html5 : Cocos2d-HTML5 是基于 HTML5 規(guī)范集的 Cocos2d引擎分支孝赫,具有跨平臺的能力和強大的性能,是 Cocos2d 系列引擎隨著互聯(lián)網(wǎng)技術演進而產(chǎn)生的一個分支红符,該分支基于 HTML5 規(guī)范集青柄,目標是可對游戲進行跨平臺部署伐债,Cocos2d-HTML5 采用 MIT 開源協(xié)議,設計上保持Cocos2d家族的傳統(tǒng)架構致开,并可聯(lián)合 Cocos2d-x JavaScript-binding 接口峰锁,最大程度地實現(xiàn)游戲代碼在不同平臺上的復用。

JSB :Cocos2d-x JavaScript-binding 是使用 SpiderMonkey 引擎實現(xiàn) C++ 接口到 JavaSciprt 的綁定方案双戳,它可以使用 Js 快速開發(fā)游戲虹蒋,以更簡單的語法實現(xiàn)功能,并且能與 Cocos2D-HTML5 相互兼容飒货,使同一套代碼魄衅,運行兩個平臺,這是相比使用 Lua 實現(xiàn)的一個明顯優(yōu)勢塘辅。

Cocos Studio :Cocos Studio 是一套基于 Cocos2d-x 引擎的工具集晃虫,包括 UI編輯器,動畫編輯器扣墩,場景編輯器和數(shù)據(jù)編輯器傲茄。 UI 編輯器和動畫編輯器主要面向美術,而場景編輯器和數(shù)據(jù)編輯器則面向游戲策劃沮榜,這四個工具合在一起構成了一套完整的游戲開發(fā)體系,幫助開發(fā)者進一步降低開發(fā)難度喻粹,提高開發(fā)效率蟆融,減少開發(fā)成本。[4]

歷史起源

作者簡介

1973年守呜,Ricardo Quesada出生于阿根廷型酥。

在Ricardo 12歲時,他母親為他購買了第一臺電腦查乒,一臺Commodore 64弥喉。

剛開始,與其他孩子一樣玛迄,Ricardo將自己的精力放在電子游戲上由境,但在幾個月后,他購買了編程方面的書籍蓖议,開始學習用BASIC語言編寫一些簡單的游戲虏杰。兩年后,Ricardo開始學習匯編語言勒虾。

在Commodore 64上纺阔,Ricardo制作了很多游戲并貢獻了一個游戲編輯器,而這臺Commodore 64也陪伴了他長達6年之久修然。此后笛钝,Ricardo選擇了iAPX 286作為他的新伙伴质况。在他學習了C語言后的幾個月,Ricardo在DOS系統(tǒng)下編寫了一些游戲Demo和一個游戲編輯器玻靡。

當然结榄,他并不滿足于此,隨后Ricardo又開始涉足Linux系統(tǒng)啃奴,并將編輯器移植到Linux系統(tǒng)上潭陪,將匯編語言改成了C語言。Ricardo將Linux作為主要的操作系統(tǒng)用了很多年最蕾,并不斷地為開源社區(qū)貢獻代碼依溯。此后他與一些志同道合的朋友一起學習了C++以及Python語言,并參加了一些開發(fā)大賽瘟则。在大學期間黎炉,Ricardo選擇了鐘愛的計算機科學專業(yè),并不斷涉獵計算機安全醋拧、算法慷嗜、游戲架構、OpenGL等大量書籍丹壕。

Cocos2d的誕生

2005年庆械,Ricardo和朋友萌生了用Python語言 “一星期編寫一個游戲”的想法。在2005~2007年間菌赖,他們設計了許多種這樣的游戲缭乘。值得注意的是,每次在設計一個新的游戲時琉用,其游戲引擎都是重新開發(fā)的堕绩。

2008年2月,他們在阿根廷Córdoba市附近的Los Cocos邑时,決定基于以前的開發(fā)經(jīng)驗奴紧,把技術進行整合,并組建了游戲引擎的原始開發(fā)團隊晶丘。一個月后黍氮,第一版的游戲引擎誕生了,根據(jù)其誕生地取名為Los Cocos浅浮。一個月后Los Cocos引擎發(fā)布了0.1版滤钱,其名稱從Los Cocos更名為Cocos2d。[4]

主要功能編輯

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

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

動作(Actions):告訴精靈們該做什么脑题〖祝可組合的動作如移動(move)、旋轉(rotate)和縮放(scale)等更多

特效(Effects):特效包括波浪(waves)叔遂、旋轉(twirl)和透鏡(lens)等更多

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

轉換(Transitions):從一個場景移動到另外一個不同風格的場景

菜單(Menus):創(chuàng)建內(nèi)部菜單

文本渲染(Text Rendering):支持標簽和HTML標簽動作

文檔(Documents):編程指南 + API參考 + 視頻教學 + 很多教你如何使用的簡單測試例子

BSD許可:盡管用就是了

基于Pyglet:沒有外部的依賴

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

架構和目錄結構編輯

架構:

cocos2d-x引擎架構

cocos2d-x引擎架構

目錄結構:

從github下載Cocos2d-x repo資源包后他炊,或解壓穩(wěn)定版ZIP壓縮包后争剿,就會看到如下的目錄結構:

目錄名稱

說明

CocosDenshion

音頻支持。注意:Android平臺中背景音樂和短音效所使用的系統(tǒng)API不同痊末。

cocos2d-x

Cocos2d-x框架的主目錄蚕苇。

document

你可以下載doxygen文檔系統(tǒng),利用該系統(tǒng)打開本文檔文件夾內(nèi)的doxygen.config文件凿叠,然后再生成離線API文檔涩笤。

extensions

如果需要更多圖形用戶界面的控制功能、網(wǎng)絡訪問盒件、CocosBuilder支持甚至2.5D功能蹬碧,你可以使用using namespace cocos2d::extension。

external

包括box2d及Chipmunk庫炒刁。

licenses

cocos2d依賴很多其他開源項目恩沽。所有授權許可文件都在這個目錄。

samples

重要翔始!這是你該開始用到的文件罗心。從Cpp/HelloCpp開始學習,你會在TestCpp中發(fā)現(xiàn)所有類的用法城瞎。lua和js樣本也在這個目錄渤闷。

scripting

我知道你不喜歡C++,寫起來太復雜脖镀。沒問題肤晓,我們有Lua和Javascript。Scripting文件夾包括來自火狐的lua官方引擎和SpiderMonkey引擎认然。

template

該目錄包括在不同集成開發(fā)環(huán)境及不同平臺中創(chuàng)建Cocos2d-x新項目的模板。這里匯集了數(shù)量龐大覆蓋各種開發(fā)環(huán)境和平臺的模板漫萄!

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平臺運行岩瘦。具體用法請參考如何用腳本創(chuàng)建Android項目未巫。

create-android-project.sh

在Linux或OS X平臺運行。具體用法請參考如何用腳本創(chuàng)建Android項目启昧。

install-templates-msvc.bat

執(zhí)行該文件安裝后叙凡,你可以在Visual Studio中創(chuàng)建空的Cocos2d-x項目。

install-templates-xcode.sh

執(zhí)行該文件安裝后密末,你可以在Xcode中創(chuàng)建空的Cocos2d-x項目握爷。

市場地位編輯

目前跛璧,占有率領先移動游戲引擎主要有Cocos2d-x、Unity3D新啼、FlashAIR追城、Unreal、Corona等燥撞。不同的統(tǒng)計方給出的數(shù)據(jù)各有差異座柱,但總體來講,行業(yè)首選的游戲引擎物舒,主要都集中在Cocos2d-x與Unity3D之上色洞。

從全球市場份額數(shù)據(jù)來看,主要覆蓋中端市場的Unity相對領先茶鉴,Cocos2d-x則主要占據(jù)高端與低端市場锋玲,約占1/4市場。但值得注意的是另一個數(shù)據(jù)是涵叮,在中國惭蹂,Cocos2d-x則相對領先。在中國的2D手機游戲開發(fā)中割粮,Cocos2d-x引擎的份額超過70%盾碗。

根據(jù)觸控科技數(shù)據(jù),國內(nèi)現(xiàn)有45款月收入超千萬手游中舀瓢,30個基于Cocos2d-x開發(fā)廷雅,2013年手機游戲產(chǎn)業(yè)的22起手游并購案中,收購股權大于51%20起京髓,其中13起的代表游戲均基于Cocos2d-x開發(fā)航缀。

注:截至2013年12月10日數(shù)據(jù)更新,國內(nèi)已有47款月收入超千萬手游堰怨,其中32款基于Cocos2d-x開發(fā)芥玉。[2-3]

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市备图,隨后出現(xiàn)的幾起案子灿巧,更是在濱河造成了極大的恐慌,老刑警劉巖揽涮,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件抠藕,死亡現(xiàn)場離奇詭異,居然都是意外死亡蒋困,警方通過查閱死者的電腦和手機盾似,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來雪标,“玉大人颜说,你說我怎么就攤上這事购岗。” “怎么了门粪?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵喊积,是天一觀的道長。 經(jīng)常有香客問我玄妈,道長乾吻,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任拟蜻,我火速辦了婚禮绎签,結果婚禮上,老公的妹妹穿的比我還像新娘酝锅。我一直安慰自己诡必,他們只是感情好,可當我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布搔扁。 她就那樣靜靜地躺著爸舒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪稿蹲。 梳的紋絲不亂的頭發(fā)上扭勉,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天,我揣著相機與錄音苛聘,去河邊找鬼涂炎。 笑死,一個胖子當著我的面吹牛设哗,可吹牛的內(nèi)容都是我干的唱捣。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼网梢,長吁一口氣:“原來是場噩夢啊……” “哼震缭!你這毒婦竟也來了?” 一聲冷哼從身側響起澎粟,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎欢瞪,沒想到半個月后活烙,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡遣鼓,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年啸盏,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片骑祟。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡回懦,死狀恐怖气笙,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情怯晕,我是刑警寧澤潜圃,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布,位于F島的核電站舟茶,受9級特大地震影響谭期,放射性物質發(fā)生泄漏。R本人自食惡果不足惜吧凉,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一隧出、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧阀捅,春花似錦胀瞪、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至傍妒,卻和暖如春幔摸,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背颤练。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工既忆, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人嗦玖。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓患雇,卻偏偏與公主長得像,于是被迫代替她去往敵國和親宇挫。 傳聞我的和親對象是個殘疾皇子苛吱,可洞房花燭夜當晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內(nèi)容