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閱讀 227,882評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,208評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,746評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,666評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,477評論 6 407
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,960評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,047評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,200評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,726評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,617評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,807評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,327評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,049評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,425評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,674評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,432評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,769評論 2 372

推薦閱讀更多精彩內容