Cocos2d-x v3.2開発環境の構成と主なバージョン
MacBook (Mac OS X 10.10.2)
Cocos2d-x Ver 3.3
Xcode Ver 6.1.1
ADT v24.0.2
Android NDK r9d
JDK v1.7
(Androidでのビルドが出来ないです。確認済み)
現時点で最新バージョンのCocos2d-x、Xcode、ADT(Android Developer Tools)を使っています。Android NDKはr10が最新ですがCocos2d-x
v3.3が対応していないようなので、旧バージョンのr9dを使いました。
JDKのバージョン1.6または1.7のインストールを推奨します。
Java JDK 最新のバージョン1.8では、Androidでのビルドが出来ませんでした。検証済み。
Javaバージョン確認コマンド
java -version
Java ver 1.7 Java SEの開発キット7ダウンロード
iOSアプリの開発環境を整える
Xcodeをインストールする
Cocos2d-xをインストールする
プロジェクトを作成する
Xcodeでビルドして実機で動作確認する
Cocos2d-xをインストールする
Download Cocos2d-xから 最新バージョンCocos2d-x
v3.4(cocos2d-x-3.4.zip)をダウンロードしてDocumentsフォルダに解凍します。ここでは書類(/Users/(ユーザ名)/Documents/cocos2d-x-3.3)に配置しました。このフォルダには今後、プロジェクトを作成してプログラムコードやリソースファイル等も置いていくことにします。
setup.pyを起動
次にcocos2dxのファイルにある[setup.py]を起動させます。
下記のように[$]の後に入力してください
$ ./setup.py
このようにすれば、ターミナルが動きます。
おそらくNDK_ROOT,ANDROID_SDK_ROOT,ANT_ROOTのパスを以下のような形で聞いてくると思います。
-->Please enter the path of NDK_ROOT (or press Enter to skip):
NDK_ROOT =>android-ndk-r9d /ndkのパス
ANDROID_SDK_ROOT =>android-sdk-macosx /sdkのパス
ANT_ROOT =>apache-ant-1.9.4/bin /antのパス
パスがわかりにくければ、フォルダーをドラッグアンドドロップをして下さい。
ただし注意点としてパスの終わりに空白があると正しく認識されません。
もう一度setup.pyを起動させて、このように表示されれば大丈夫です。
->Check environment variable
NDK_ROOT
->Search for
environment variable NDK_ROOT...
->NDK_ROOT is
found : /Users/maedahajime/Documents/android-ndk-r9d
->Check environment variable
ANDROID_SDK_ROOT
->Search for
environment variable ANDROID_SDK_ROOT...
->ANDROID_SDK_ROOT is found : /Users/maedahajime/Documents/android-sdk-macosx
->Check environment variable
ANT_ROOT
->Search for
environment variable ANT_ROOT...
->ANT_ROOT is
found : /Users/maedahajime/Documents/apache-ant-1.9.4/bin
先ほど入力したNDK_ROOTをPC上に登録をすれば再度入力する必要はありません。
これはターミナルを使って簡単に登録ができます。
$ source
/Users/'あなたのMacのユーザーネーム'/.bash_profile
プロジェクトの作成と実行
Cocos2d-xには、クロスプラットフォーム開発を行うためのプロジェクト作成ツールが用意されています。またどのプラットフォームでも簡単にプロジェクトを実行できます。それを行ってくれるのがcocosコマンドです。
プロジェクトの作成
cocos new
プロジェクトの実行
cocos run
cocos newコマンドの実行
コマンドの実行プロジェクトを作成するときは、cocos new コマンドを利用します。
このコマンドにはオプションがあります。
コマンドのオプション
-p パッケージ名
-l プログラミング言語(cpp:C++,lua:Lua,js:JavaScript)
-d 保存先フォルダー名
ターミナルの起動
アプリケーションにある「ユーティリティ」を選択し「ターミナル.app」を起動します。
コマンドの入力
cocos new FirstGame -d ~/Documents -p com.iScene.projects -l cpp
このコマンドは、プロジェクト名「FirstGame」を作成します。保存先は、書類フォルダ(~/Documents)、パッケージ名は、「com.iScene.projects」、プログラム言語はC++のオプションをつけています。return(enter)キーを押すとプロジェクトの作成の実行が始まりしばらくするとプロジェクト作成が完了します。実行に失敗する場合は、環境変数が正しく設定されていないと可能性がありますので見直しをして再度実行してみてください。
実行ログ表示
プロジェクトの保存内容
Documents(書類フォルダ)の中に「FirstGame」フォルダが作成できています。
「FirstGame」フォルダ内に「FirstGame.ios_mac」フォルダがありその中に「FirstGame.xcodeprj」が作成されています。
「FirstGame.xcodeprj」を起動するとXcodeが立ち上がります。
cocos run コマンドの実行(iOS)
オブジェクトの実行もcocosコマンドで行うことができます。cocos run コマンドを利用します。このコマンドにはオプションがあります。
コマンドのオプション
-s プロジェクトがあるフォルダ名
-p プラットフォーム(ios,androidなど)
-m モード(debug,relase)
コマンドの入力
cocos run -s ~/Documents/FirstGame/ -p ios
実行すると、初回は全てのソースコードのビルドを行われるため、5〜10分ほどの時間が必要としますが初回のみで2回目以降は、修正された箇所のみ再ビルドするため、短い時間でビルドが完了します。また自動でiOSシミュレータが立ち上がりビルドしたアプリが起動します。実機でも起動させることができます。
** BUILD SUCCEEDED ** と表示されていればビルド成功です。
Android.mkの修正
HelloWorldScene.cppに変わるクラスを制作されている場合には、Android.mkの修正が必要です。iOS向けには最初から読み込まれる設定が行われているのですがAndroid向けにはこの設定が行われていません。そのためAndroidのmakeファイルの修正を行います。makeファイルは次のパスにあります。これをテキストエディタで開いてください。
/Users/ユーザー名/Documents/FirstGame/proj.android/jni/Android.mk
修正箇所は1箇所です。デフォルトでは、HelloWorldScene.cppに記載されていますので制作されているクラス名に修正してください。
制作された「FirstGameScene.cpp」に変更し保存てください。
これでAndroid向けのビルドの準備できました。
cocos run コマンドの実行(Android)
コマンドの入力Androidも同様に実行できます。
Android向けのビルドも初めてですので、こちらも5〜10分ほどの時間が必要としますが初回のみで2回目以降は、修正された箇所のみ再ビルドするため、短い時間でビルドが完了します。Androidのシミュレータまたは実機がUSBでPCに接続されていると、ビルドが完了したタイミングでアプリが起動します。
コマンドの入力
cocos run -s ~/Documents/FirstGame/ -p android
ターミナルにこのような内容が表示されていれば成功です。
▫️参考にした書籍
Cocos2d-x スマートフォン2Dゲーム開発講座
コメントをお書きください