使用 Cocos2d-x 3.0 或者更新版本構建多平臺游戲
在這個教程中,你將學到如何在 Windows 開發環境中使用 Cocos2d-x 3.0 或更高版本來創建一個簡單的游戲,和如何在 Windows 和 Android 平臺上運行它。
Cocos2d-x 是什么?
Cocos2d-x 是一個跨平臺的游戲開發框架(也可以用來開發其他圖形應用,比如互動圖書),它是基于 iOS 的 cocos2d 框架實現的,與其不同的是,cocos2d-x 使用 C++,JavaScript, Lua 而不是Objective-C。
這個框架的優勢之一就是,使用它創建的游戲,不用修改代碼,只需要做少量的平臺配置適應,就能夠很容易的將其部署到其他平臺(例如Android, iOS, Win32, Windows Phone, Mac, Linux等多個平臺)
Cocos2d-x 命令行
cocos2d-console 是在 3.0 版本中被引進的。它是一個命令行工具,提供一些管理 Cocos2d-x 或者Cocos2d-JS 工程的功能,例如:創建,執行,建立,調試等等。
創建你的第一個游戲
1 -( Download )下載最新版本的框架并將其解壓到你的開發環境中。本教程使用的版本是 3.3rc0 version , 框架解壓到桌面 (C:\Users\intel-user\Desktop\cocos2d-x-3.3rc0).
Figure 1. Cocos2d-x version 3.3 RC0 目錄結構
2 – 為了用 cocos2d-x 創建新工程, 需要使用框架目錄中的 setup.py (a Python* script) 配置編譯 Win32 和 Android 平臺的環境變量. 在執行 setup.py 之前,還需要下載和安裝下面的配置工具:
如果沒有安裝 Python 環境, 下載 2.7.6 版本的python安裝程序: http://www.python.org/download/
Figure 2. setup.py location
3 - 打開命令提示窗口 (cmd.exe) 執行以下命令:
- 切換到腳本所在的文件夾 (框架目錄):
cd C:\Users\intel-user\Desktop\cocos2d-x-3.3rc0
- 運行 setup.py:
python setup.py (or setup.py only)
Note:要在命令提示窗口中運行python命令, 需要將python的安裝目錄添加到系統的path環境變量中.
- 此腳本需要Android SDK, Android NDK 和 ANT的安裝路徑.
-
Android NDK 目錄:
Figure 3. Cocos2d-console 設置NDK 目錄
-
Android SDK 目錄:
Figure 4. Cocos2d-console 設置 SDK 目錄
-
Apache ANT bin 目錄:
Figure 5. Cocos2d-console 設置 ANT bin 目錄
添加要求的目錄之后, 重新打開命令提示窗口 (cmd.exe). 要使用 cocos2d-console 命令必須這樣做.
4 – 輸入 cmd.exe 進入命令行提示框(cocos2d-console 命令只能從這里執行),再次打開框架文件夾:
cd C:\Users\intel-user\Desktop\cocos2d-x-3.3rc0
在下面的步驟,我們將創建一個新的Cocos2d-x 項目:
cocos new MyGame –p com.Project.MyGame –l cpp –d Project
Figure 6. 創建 Cocos2d-x 項目
下面的參數的簡單解釋:
-
new: 創建一個新的項目,后面必須緊跟項目名稱(此例中為MyGame)
-
-p: 定義包名
-
-l: 選擇編程語言,可以是 cpp 或者 lua
-
-d: 框架所要創建的工程結構的目錄
如果一切順利,你的項目將會在 Project 目錄創建,這也是框架被提取出來的目錄。
Figure 7. MyGame 目錄結構
創建出來的項目包含基本的游戲(類)代碼,資源(圖片,音頻等),以及每個框架支持的平臺項目。
構建 Android 應用程序
要求:
-
你需要配置構建 Android 游戲應用程序所需的所有環境變量(Android SDK,Android NDK,以及 ANT)。如果你還沒有完成這個步驟,請查看本文“創建第一個游戲”的章節。
注意:由于 Cocos2d-console 使用 javac 命令構建 Android 應用程序,所以 增加 JAVA_HOME 環境變量 (JDK 路徑)是必要的。
1 – 我們將為多個平臺編譯我們的游戲,但是框架默認不會編譯 x86 和 armeabi-v7a 平臺。編輯位于以下路徑的 Application.mk 文件:
C:\Users\intel-user\Desktop\cocos2d-x-3.3rc0\Project\MyGame\proj.android\jni
Figure 8. Application.mk文件位置
2 –在文件中增加下面一行內容:
APP_ABI := armeabi armeabi-v7a x86
Figure 9. 增加了 APP_ABI 行的 Application.mk 文件
現在,我們增加了目標平臺,讓我們開始編譯游戲吧!
3 – 使用命令行提示框,進入到框架目錄:
cd C:\Users\intel-user\Desktop\cocos2d-x-3.3rc0
4 – 執行下面的命令來編譯和運行 Android 平臺游戲.
cocos run –s Project\MyGame –p android
Figure 10. 執行命令編譯和運行 Android 平臺游戲
-
run: 編譯和運行項目
-
-s: 工程文件夾路徑
-
-p: 選定的平臺
注意:如果只是編譯,請輸入: cocos compile –s Project\MyGame –p android
如果一切運行正常, cocos2d-console 命令將使用adb (如果在環境變量中配置了的話) 在連接的設置中,或者已經初始化的模擬器中,安裝APK文件。如果它們不可用,命令將等待設備或模擬器成為可用的狀態,如下圖所示:
Figure 11. 命令等待設備或已初始化的模擬器
如果你已經初始化了模擬器或者已經連接了設備,屏幕將會出現:
Figure 12. Android平臺的游戲屏幕
構建Win32應用程序 (對應Windows* 7 或者 Windows* 8 桌面模式)
你需要Visual Studio* 2012 或者后續版本來構建。
1 – 使用命令行提示框(cmd.exe), 進入框架提取出來的目錄:
cd C:\Users\intel-user\Desktop\cocos2d-x-3.3rc0
2 – 執行下面的命令來編譯和運行Windows平臺下的游戲:
cocos run –s Project\MyGame –p win32
Figure 13. 執行命令編譯和運行Windows平臺下的游戲
參數的簡單說明:
-
run: 編譯和運行選擇的項目
-
-s: 項目文件夾路徑
-
-p: 選擇的平臺
注意: 如果只需要編譯,請使用“compile” 代替“run”,像下面這樣:
cocos compile –s Project\MyGame –p win32
在執行完命令之后,如果一切運行正常,你將看到如下的屏幕:
Figure 14. 在Windows平臺下的游戲屏幕
可以使用Visual Studio運行和編譯此游戲工程:
1 – 在工程目錄中, 用Visual Studio打開 “proj.win32”目錄下的 MyGame.sln 文件.
Figure 15. Win32 工程目錄結構
2 – 編譯工程: 按F6鍵 (或 Build 菜單 -> Build Solution) ,然后按 F5 執行 (或者 Debug 菜單 -> Start Debugging). 經過編譯和執行后,你應該看到和通過控制臺操作相同的屏幕顯示.
Figure 16. Win32 project opened in Visual Studio*
到此,你應該知道如何為Android (x86 and ARM*), Windows 7和 Windows 8 (桌面模式)創建游戲并編譯它!
引用
Cocos2d-x 框架源碼使用MIT License開源協議, 你可以在這里找到它.
Cocos2d-x 和相關的文檔: http://www.cocos2d-x.org/
cocos2d-console: http://www.cocos2d-x.org/wiki/Cocos2d-console
注
目前, Cocos2d-x 3.3 存在不允許用戶創建項目的問題 (詳情參考 這里). 這個問題已經在最新的預發布版中修復, 但還存在在Cocos2d-x最新版中.