手游開發(fā)工具CocoStudio的前世今生
要了解CocoStudio,需要先了解Cocos2d-x,Cocos2d-x是開源的游戲引擎,一個支持多平臺的2D手機游戲引擎,使用C++開發(fā),基于OpenGLES,基于Cocos2d-iphone,支持iOS4.1,Android2.1,WindowsPhone7及更高版本。
Cocos2D-X引擎的來歷
Cocos2D-X游戲引擎并不是最初的版本。從名字讀者就能看出最早的版本其實為Cocos2D引擎版本。追溯起來,Cocos2D引擎已經(jīng)有5 年的歷史了。在2008年3月,Ricardo Quesada發(fā)布了Cocos2D引擎的第一個版本。最初的引擎版本定位于平面游戲框架,使用的開發(fā)語言為Python語言。在發(fā)布之初,只有235份 的下載量。之后的兩年間,Cocos2D引擎的受眾群體依然很少,很少有游戲開發(fā)者知道。
說明:Cocos2D的名字是來自于引擎原創(chuàng)團隊所在的阿根廷Córdoba市附近的Los Cocos。
2008年,蘋果公司在喬布斯先生的帶領(lǐng)下進軍手機移動市場。這不僅改變了手機移動市場的格局,也為移動游戲產(chǎn)品帶來了新的平臺。引擎開發(fā)團隊抓住 了此次機會,在2008年6月宣布將會接入iPhone手持平臺,并在當月就公布了以O(shè)bjective-C為基礎(chǔ)的Cocos2D for iPhone 0.1引擎版本。此版本延續(xù)了Python版引擎的框架和設(shè)計思路。隨著iOS設(shè)備市場占有率不斷上升,iPhone游戲產(chǎn)品也成為了用戶最愛的應(yīng)用。截 止到2008年12月,蘋果網(wǎng)上商店(App Store)上已有超過40個用Cocos2D引擎開發(fā)的游戲。
到2010年的9月份,Cocos2D引擎已經(jīng)在游戲開發(fā)者中流行。許多的開發(fā)者第一次接觸Cocos2D引擎,就是來自其iPhone平臺的版 本。此版本不僅是Cocos2D引擎當中的明星產(chǎn)品,它也是App Store最為成功的引擎。由于iPhone版本完善而成熟的功能,使得它在開發(fā)者中廣泛傳播并使用。隨后《StickWars》成為第一款在美國區(qū)付費 榜奪得冠軍的Cocos2D游戲,這宣告了Cocos2D引擎的時代已經(jīng)到來。與此同時,英國的設(shè)計大師Michael Heald為Cocos2D引擎設(shè)計了新的標志,替換了之前"奔跑的椰子",如圖1-2所示。
圖1-2左邊的是Cocos2D引擎版本,它是基于Objective-C語言的版本。右邊的就是本書將介紹的Cocos2D-X引擎。在 iPhone版本發(fā)布之前,Cocos2D引擎只被少數(shù)開發(fā)者用來制作個人電腦平臺上的游戲。游戲產(chǎn)品大多以Flash開發(fā)類型的居多。因為在個人電腦平 臺上,存在著許多優(yōu)秀的游戲引擎,再加上Python語言比較小眾,所以Cocos2D引擎并沒有大放異彩的機會。直到現(xiàn)在也是如此,在個人電腦平臺上, 它并不是開發(fā)者熱衷的游戲引擎。
但是因為iPhone版本的出現(xiàn),憑借著用戶對iPhone設(shè)備的熱衷,Cocos2D-iPhone版本,也變成開發(fā)者的首選。換句話 說,iPhone版本的誕生是引擎發(fā)展的重要時刻。它成為了引擎體系中第一個明星。隨后不久,另一個更加耀眼的明星誕生了。那就是更具歷史意義的 Cocos2D-X版本。Cocos2D-X引擎版本開啟了跨平臺開發(fā)的時代。"X"意味著Cross,表示交叉的意思。-X引擎版本為開發(fā)者提供了跨平 臺的支持。開發(fā)者只需使用C++語言編寫一次游戲邏輯,就可以在Android、iOS以及其他移動平臺運行。
說明:值得驕傲的是Cocos2D-X引擎版本是由國內(nèi)開發(fā)者王哲(walzer)以及團隊制作的。
Cocos2D-X版本之后,引擎發(fā)展進入了鼎盛時期。同一時期,美國人用C#改寫成CocosNet,新西蘭人Ryan Williams用JavaScript改寫了HTML5的版本,中國人則用C++改寫了Cocos2D-X版本。正如圖1-3所示的,在全球開發(fā)者的貢 獻下,Cocos2D引擎衍生出了很多的版本。
開發(fā)者社區(qū)也涌現(xiàn)出豐富的工具和編輯器,其中有Texture Packer、Glyph Designer等單一工具,也有CocoShop、CocosBuilder、Sprite Helper/Level Helper等集成式的編輯器。開發(fā)者社區(qū)還提供了大量的書籍教程、示例代碼、視頻培訓等供開發(fā)者學習和使用。如今Cocos2D引擎各個版本還都在不斷地發(fā)展和更新中。Cocos2D引擎的原始團隊也受雇于Zynga公司。Cocos2D-X引擎團隊也受到了來自微軟和谷歌的贊助。
CocoStudio的前世今生
Cocos2d-x雖然有了熱心的開發(fā)者們分享出自己的編輯器,但這些編輯器要么應(yīng)用場景單一,要么難以協(xié)作,因此Cocos2d-x雖然使用人數(shù)眾多,但開發(fā)起來還存在一定的門檻。而遍觀市場上成熟的游戲引擎,都有配套的開發(fā)工具,比如Flash、Unity、Unreal引擎等,因此開發(fā)團隊在經(jīng)過重重考慮后推出了官方出品的工具。
在2012年官方團隊已經(jīng)在考慮推出開發(fā)工具套裝,當時名字叫做SP-II,Sweet Pomegranate 2代的意思,甜石榴。
官方在官網(wǎng)和官方論壇進行了小范圍宣傳,不過同時卻表示正式版本要在2013年才推出。
到2013年的CocoaChina開發(fā)者大會,Cocos2d-x官方團隊宣布了CocoStudio工具集,原來為了統(tǒng)一名稱而且能夠看出是基于Cocos2d-x的工具,所以最終官方團隊將它叫做CocoStudio。啟動器的名字到現(xiàn)在還是叫SPIILauncher。
關(guān)于編輯器的開源問題,官方表示:
首先這個工具的開源是否有意義,前提是使用者是否可以依照自己的需求對編輯器進行修改,如果提供了編輯器可以自定修改的功能,那么我自己的意見是不開源。
我反倒覺得比較重要的問題是,因為底層是用的是MIT License的cocos2d-x,MIT License呀,所以其實應(yīng)該更關(guān)心的是,你自己是否可以隨意修改游戲的代碼,是否可以進行版本管理,是否可以加自己的東西,答案當然是可以。我們提供 這個工具,就是為了滿足cocos2d-x的開發(fā)者,補充他們的工具需求。我今天在開發(fā)者大會上并沒有提及,但是我想在這里簡單進行一些比較:
工程的開放性:Unity3D導出的工程,你是沒辦法改的,因為人家用的是MONO,你只能通過插件的方式進行擴展。如果你要進行定制,源代碼20萬美金,而且不賣中國。GameSalad、Corona,都是需要你把自己做好的工程上傳到他們的服務(wù)器進行build,沒有其他方式。
支持多人開發(fā):用過Unity的人就應(yīng)該清楚代碼合并有多困難。其他工具更沒辦法進行什么代碼合并。
所以我今天一直在提的,并不是我要提供一個開源項目,而是一個真正靠譜的,支持多人游戲,商業(yè)化游戲開發(fā)的工具。而這個工具,是我們進行很大人力成本投入的,會長期維護,并免費提供給大家的東西。所以請不要再問,這東西是不是會開源,請多問,這東西是否能滿足我的需求。
從0.1版到現(xiàn)在V0.1.6,CocoStudio已經(jīng)推出了6個迭代版本,但從版本號就可以看出,這還沒有達到可以給所有人用的穩(wěn)定版,并且目前只支持Windows平臺,CocoStudio開發(fā)團隊正在火熱開發(fā)中,爭取早日給游戲開發(fā)者們提供穩(wěn)定好用的版本。
















 
 
 







 
 
 
 