【cocos2d-x】Windowsでcocos2d-x 3.0の環境構築メモ

More than 1 year has passed since last update.

最近、ゲーム業界に面接を受けて気づいたことは「Unity」より「Cocos2d-x」を使ってる感じでした。
UnityとCocos2-dx両方ともまだまだ初歩なんだけど、個人的にはUnityの方が開発しやすいし
ソースコードをコピペするだけですぐプラットフォームの切り替えが速い。
cocos2d-xは開発環境を整えるのに時間が掛かりすぎる!!と思って少しまとめてみました。

ダウンロード

Cocos2d-x

http://www.cocos2d-x.org/download
・筆者のバージョンは「v3.0alpha0-pre」です。
・Cocos2d本体

Android SDK

http://developer.android.com/sdk/index.html
・筆者のバージョンは「adt-bundle-windows-x86_64-20130729」です。
・Andorid開発に必須

Pleiades Eclipse(JavaまたはUltimate)

http://mergedoc.sourceforge.jp/
・筆者のバージョンは「pleiades-e4.3-ultimate-jre_20130626」です。
・開発ツール

Android NDK

http://developer.android.com/tools/sdk/ndk/index.html
・筆者のバージョンは「android-ndk-r9-windows-x86_64」です。
・C++ -> Javaにコンパイル

Cygwin

http://cygwin.com/install.html
・筆者のバージョンは「1.7.25」です。
・Windowsでシェルスクリプトやコンパイルするため
・追加インストールで「Devel -> Make」をインストール
1.png

Python(PleiadesをUltimateでタウンロードした方は無視してもいい)

http://python.org/download/
・筆者のバージョンは「python-3.3.2.amd64」です。
・「create-multi-platform-projects.py」のPythonソースコードでマルチプラットフォームのプロジェクトを作るため

Windows環境変数

・Pathにそれぞれパスに合わせて入れてください。
・筆者は下記と同じです。
例 : D:\Programs\cygwin64\bin;/cygdrive/d/Programs/cygwin64/bin;D:\Programs\Python33;
・cygdriveはCygwinでLinux風なパスです。

Cygwin設定

・「Cygwinパス\etc\fstab」に1行追加(テキストエディタで開く)
none /cygdrive cygdrive binary,noacl,posix=0,user 0 0

Eclipse設定

・「ウィンドウ -> 設定 -> 一般 -> ワークスペース -> リンクされたリソース」にCocos2d-xルートパスを追加
2.png
・「ウィンドウ -> 設定 -> Android -> NDK」にAndroid NDKルートパスを追加
3.png
・「ウィンドウ -> 設定 -> C/C++ -> ビルド -> 変数に追加
4.png
・「libcocos2dx」ライブラリをプロジェクトにインポート
1. ファイル -> 新規 -> プロジェクト -> Android -> 既存コードからのAndroid プロジェクト
2. 「Cocos2d-xルート/cocos2dx/platform/android/java」を選択
5.png

Android SDKマネージャー設定

・Android 4.3, 3.2 2.3のSDK Platformをそれぞれダウンロード

Android 仮想デバイス・マネージャー

・Android Virtual DeveiceのAndroid 4.3, 3.2, 2.3を追加

TestCPPを実行

  1. ファイル -> 新規 -> プロジェクト -> Android -> 既存コードからのAndroid プロジェクト
  2. 「Cocos2d-xルート/cocos2dx/samples/Cpp/TestCpp/proj.android/」を選択
  3. 「実行 -> 実行」

その他

・サンプル実行中に下記のエラーが出たら仮想デバイスに「ホストGPUを使用する」をチェック
09-16 01:49:34.764: E/AndroidRuntime(332): FATAL EXCEPTION: GLThread 10
09-16 01:49:34.764: E/AndroidRuntime(332): java.lang.IllegalArgumentException: No configs match configSpec
09-16 01:49:34.764: E/AndroidRuntime(332): at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:763)
09-16 01:49:34.764: E/AndroidRuntime(332): at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:919)
09-16 01:49:34.764: E/AndroidRuntime(332): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1264)
09-16 01:49:34.764: E/AndroidRuntime(332): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1118)

6.png

参考

http://www.slideshare.net/doraemonsss/windowscocos2dx-212android
・Cocos2d-xの本体\samples\Cpp\TestCpp\proj.android\README.md