Dorothy
是一個在 Cocos2d-x-lua
基礎上發展起來的分支, 它去掉 Cocos2d-x-lua
那些過多的擴展, 而且作了必定程度的優化, 目前提供瞭如下4種編輯器:android
Action Editor
: 2D骨骼動畫編輯器Body Editor
: 物理編輯器Effect Editor
: 特效編輯器(目前只有粒子系統編輯器)Scene Editor
: 場景編輯器(用於組織遊戲邏輯)它支持 Windows/OSX/iOS/Android
多個平臺, 一方面用它生成的程序能夠跨平臺部署, 另外一方面它自己也能夠跨平臺部署, 本文後面會演示如何編譯 OSX
和 iOS
下的 Dorothy
.ios
下面是做者對軟件的說明:git
Dorothy是Cocos2d-x-Lua的另外一個分支,基於原始版本2.1rc0版再次開發的框架。之因此開始在這個版本上作自定義的開發,是由於我在跟隨原版的更新,持續作開發的過程當中,發現它的功能漸漸變得又多又雜,吸納了各式各樣的擴展,光是骨骼動畫的擴展就重複增長了兩套代碼。而且它的擴展的開發我以爲定製得也不夠深刻,除了引入更多bug坑之外,並無簡化太多的開發工做。此外原版的Lua接口是幾乎徹底依賴tolua++自動生成的,導出了不少沒有意義的接口,並生成不少冗餘的綁定代碼,而且tolua++的綁定機制也太過於通用化,沒有很好地利用Cocos2d-x的特性。框架
因此一方面爲了精簡核心框架,另外一方面又提供更加深度定製的輔助框架,優化Lua綁定代碼,我漸漸地居然寫出了這樣一個分支版原本。編輯器
這個分支提供了更加精簡的API接口。移除了原版中不是特別核心的擴展功能,添加了更有用的特性,修復了原版的一些bug,而且改善了Lua綁定的核心代碼和tolua++生成的綁定代碼。優化
更詳細的介紹能夠參考做者的博客 Dorothy是什麼動畫
Dorothy
所有開源, 代碼託管在開源中國的碼雲平臺 Dorothy, 能夠經過以下命令來克隆到本地:ui
git clone https://git.oschina.net/pig/Dorothy
操做記錄以下:lua
Air:GitHub admin$ git clone https://git.oschina.net/pig/Dorothy Cloning into 'Dorothy'... remote: Counting objects: 18984, done. remote: Compressing objects: 100% (9631/9631), done. remote: Total 18984 (delta 12342), reused 14253 (delta 8531) Receiving objects: 100% (18984/18984), 74.15 MiB | 306.00 KiB/s, done. Resolving deltas: 100% (12342/12342), done. Checking connectivity... done. Checking out files: 100% (1783/1783), done. Air:GitHub admin$
https://
的形式, 不然會出錯接着要執行一下 ./Dorothy/tools/tolua++
目錄下的 build.sh
命令, 以便生成編譯所須要的 LuaCode.cpp
和 LuaBinding.cpp
文件, 操做記錄以下:.net
Air:tolua++ admin$ ./build.sh Binding files generated! Air:tolua++ admin$ pwd /Users/admin/GitHub/Dorothy/tools/tolua++
項目文件保存在 ./Dorothy/project
目錄下, 以下所示:
Air:Dorothy admin$ cd project/ Air:project admin$ pwd /Users/admin/GitHub/Dorothy/project Air:project admin$ ls -al total 16 drwxr-xr-x 9 admin staff 306 7 18 14:10 . drwxr-xr-x 25 admin staff 850 7 18 14:10 .. -rw-r--r--@ 1 admin staff 6148 7 18 18:55 .DS_Store drwxr-xr-x 4 admin staff 136 7 18 14:06 Classes drwxr-xr-x 11 admin staff 374 7 18 15:33 Resources drwxr-xr-x 17 admin staff 578 7 18 14:06 proj.android drwxr-xr-x 12 admin staff 408 7 18 14:18 proj.ios drwxr-xr-x 5 admin staff 170 7 18 14:11 proj.mac drwxr-xr-x 10 admin staff 340 7 18 14:06 proj.win32 Air:project admin$
其中 proj.ios
和 proj.mac
就是咱們本次打算編譯的, 用 XCode 7.3.1
打開項目文件, 直接編譯便可, 在編譯 proj.ios
時若是鏈接了真機而且選擇了它則能夠把生成的目標文件安裝到真機上, 這樣你就能夠在 iPad
上運行 Dorothy
了.
proj.ios
時請把 XCode
的 Build Setting
中的 bitcode
選項關閉, 不然會由於一個第三方庫文件 ./lua/lib/ios/libluajit.a
沒有支持 bitcode
而致使連接錯誤.截圖:
最上面一行是4個編輯器
中間是用 Dorothy
生成的一些例子
截圖:
截圖:
截圖:
截圖:
如今完成度比較高的是 Action Editor
, Body Editor
和 Scene Editor
, Effect Editor
中還有一個幀動畫模塊沒完成.
通過一番研究, 終於明白如何作骨骼動畫了, 下一篇介紹如何用 Action Editor
生成一個2D骨骼動畫.
感謝軟件做者提供的幫助