使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

oschina發表於2015-04-10

在這個教程中,你將學到如何在 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).

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

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/

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

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 目錄:

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 3. Cocos2d-console 設定NDK 目錄

  • Android SDK 目錄:

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 4. Cocos2d-console 設定 SDK 目錄

  • Apache ANT bin 目錄:

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

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

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 6. 建立 Cocos2d-x 專案

下面的引數的簡單解釋:

  • new: 建立一個新的專案,後面必須緊跟專案名稱(此例中為MyGame)
  • -p: 定義包名
  • -l: 選擇程式語言,可以是 cpp 或者 lua
  •  -d: 框架所要建立的工程結構的目錄

如果一切順利,你的專案將會在 Project 目錄建立,這也是框架被提取出來的目錄。

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 7. MyGame 目錄結構

建立出來的專案包含基本的遊戲(類)程式碼,資源(圖片,音訊等),以及每個框架支援的平臺專案。

構建 Android 應用程式

要求:

  • 你需要配置構建 Android 遊戲應用程式所需的所有環境變數(Android SDK,Android NDK,以及 ANT)。如果你還沒有完成這個步驟,請檢視本文“建立第一個遊戲”的章節。
  • 安裝 Java 開發套件(JDK)

注意:由於 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

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 8. Application.mk檔案位置

2 –在檔案中增加下面一行內容:

APP_ABI := armeabi armeabi-v7a x86

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

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

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 10. 執行命令編譯和執行 Android 平臺遊戲

  • run: 編譯和執行專案
  • -s: 工程資料夾路徑
  • -p: 選定的平臺

注意:如果只是編譯,請輸入: cocos compile –s Project/MyGame –p android

如果一切執行正常, cocos2d-console 命令將使用adb (如果在環境變數中配置了的話) 在連線的設定中,或者已經初始化的模擬器中,安裝APK檔案。如果它們不可用,命令將等待裝置或模擬器成為可用的狀態,如下圖所示:

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 11. 命令等待裝置或已初始化的模擬器

如果你已經初始化了模擬器或者已經連線了裝置,螢幕將會出現:

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

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

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 13. 執行命令編譯和執行Windows平臺下的遊戲

引數的簡單說明:

  • run: 編譯和執行選擇的專案
  • -s: 專案資料夾路徑
  • -p: 選擇的平臺

注意: 如果只需要編譯,請使用“compile” 代替“run”,像下面這樣:

cocos compile –s Project/MyGame –p win32

在執行完命令之後,如果一切執行正常,你將看到如下的螢幕:

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 14. 在Windows平臺下的遊戲螢幕

可以使用Visual Studio執行和編譯此遊戲工程:

1 – 在工程目錄中, 用Visual Studio開啟 “proj.win32”目錄下的 MyGame.sln 檔案.

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

Figure 15. Win32 工程目錄結構

2 – 編譯工程: 按F6鍵 (或 Build 選單 -> Build Solution) ,然後按 F5 執行 (或者 Debug 選單 -> Start Debugging). 經過編譯和執行後,你應該看到和通過控制檯操作相同的螢幕顯示.

使用 Cocos2d-x 3.0 或者更新版本構建多平臺遊戲

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最新版中.

相關文章