近日,cocos2d家族開始了版本的聯合發布,也就是說從cocos2d-x的2.1版本開始,終于可以實現廣大開發者期盼已久的一套代碼橫跨ios,android和html5的夢想了,這次聯合發布的包括cocosBuilder,cocos2d-iphone,cocos2d-x和cocos2d-html5版本,這篇文章就是筆者對這套開發工具的初體驗經驗總結。使用的是第二次聯合發布的cocos2d-x的2.1.1版本。
首先是從cocosbuilder中創建項目工程,然后導出的過程,首先創建工程,如圖所示:

這個模板工程是這樣一個界面,帶有寫好的js邏輯,點擊按鈕標題會旋轉,然后在菜單中選擇導出設置,設置導出的類型和支持的分辨率。
?
可以選擇的包括android,ios和html5,然后在菜單中選擇“Publish”就可以分別導出這三種平臺需要的資源目錄了,如圖

然后就是把這三個文件夾中的資源文件分別在三個平臺上運行,首先是ios平臺,直接使用cocos2d-x就可以,首先創建cocos2d-x的js項目
?
? ?然后就是把xcode的cocos2dx-js模板項目中的js文件和ccb文件替成新的就可以了,這里有幾個地方是需要注意的。
1)這個項目里只有一個啟動類AppDelegate,但是替換js時AppDelegate的入口js文件需要修改的,位置很容易找到。
2) 在項目里引入js文件時,xcode不會自動把js文件打入到包里,這樣就會出現找不到js文件的情況,我們需要做的就是手動的修改一下,在項目的Build?Phase設置里面,有個Copy?Bundle?Resources項目,手動把js文件添加進去。
? ? ? ? ? ? ? ?
??
編譯運行,效果如圖所示
? ? ? ? ?
接下來是android平臺上的運行,關于android平臺開發環境的搭建,請參考cocos2d-x的官方文檔?
[http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Setting_up_Android_Development_Environment_on_Mac_OSX#Setup-Eclipse-in-MBP-Retina](http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Setting_up_Android_Development_Environment_on_Mac_OSX#Setup-Eclipse-in-MBP-Retina)
值得一提的是,google在eclipse的基礎上為android創建了一個集成的開發環境Android?Developer?Tools,雖然就是以前的eclipse+adt插件+sdk的集合,但是這樣的集合也省去了我們配置的時間,另外需要說明的是文檔中提到的定義環境變量的問題,需要首先運行pico?.bash_profile命令,另外第一行的環境變量名稱應該是ANDROID_SDK_ROOT。配置好了環境以后我們就可以運行build_native來編譯,需要注意的就是
1)編譯的Android.mk文件和Application.mk都需要修改,可以參考Sample下的javascript項目,需要增加一些內容。
2)assert文件夾雖然是自動生成的,但是需要做一項額外的工作,就是把引擎目錄或者是lib目錄下,“scripting\javascript\bindings\js”目錄下的js文件拷入到你的assert目錄下,如果你覺得這樣麻煩,也可以修改build_native,可以參考Sample下的javascript項目的build_native寫法自動把這些文件拷近來,總之這一步是必須的。
3)最后便可以像文檔中所說的,在elipse做最后的聯機調試,需要說明的是,我在模擬器上運行是報錯的,需要用真機調試,我使用的是HTC-G7調試,這個頁面的幀率在58左右,跑cocos2dxjs自帶的模板時,有很多西瓜的那個頁面幀率基本是30-40,可以看出js在android上的效率還是不錯的。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
最后是html5版本,關于cocos2D-html5的環境搭建,請參照我之前的文章:
[http://blog.csdn.net/bill_man/article/details/7668516](http://blog.csdn.net/bill_man/article/details/7668516)
在mac上的搭建也是大同小異,下載最新的cocos2D-html5版本然后解壓,將目錄下的全部文件拷貝到xampp的目錄htdocs下,然后在CocosDragonJS同級的目錄下創建一個GameClientJS目錄,并把Published-html5文件夾拷入,然后啟動xampp,輸入地址運行cocos2d-html5目錄下的index.html頁面:
? ? ? ? ? ? ? ? ? ? ? ?
我加了一個GameClientJS的鏈接,點擊這個鏈接運行ameClientJS\Published-html5目錄下的index.html頁面。
? ? ? ? ? ? ? ? ? ? ? ??
如有錯誤之處,歡迎指正。
- 前言
- (1)--HelloWorld
- (2)--重要概念及Test例子結構
- (3)--動作(CCAction)
- (4)--觸屏事件
- (5)--動作管理
- (6)--場景間切換效果
- (7)--CCProgressTimer
- (8)--場景特效
- (9)--粒子系統
- (10)--運動中的加速度效果
- (11)--拖動間隱效果
- (12)--圖形繪制
- (13)--內存回收機制
- (14)--菜單項
- (15)--CCOrbitCamera
- (16)--LayerColor
- (17)--瓦片地圖集
- (18)--Lable
- (19)--物理引擎box2d(1)
- (20)--物理引擎box2d(2)
- (21)--精靈類
- (22)--動畫類
- (23)--其他(屏幕旋轉,schedule,系統語言)
- (24)--音樂音效
- (25)--CCRenderTexture
- (26)--其他(游戲存檔,切換高清,圖片處理)
- (27)--CCMutableArray
- (28)--CCTMXTiledMap
- (29)-cocosBuilder
- (30)2.1新特性之CCClippingNode
- (31)2.1新特性CCPhysicsSprite
- (32)-cocos2d-x & javascript跨平臺初體驗