あっというまにCocos2d-x v3.7がリリースされました。
このバージョンからJavaScriptによる開発ができるCocos2d-JSが再度組み込まれています。
これにより、iOS/Android等のネイティブに加え、Web向けにもパブリッシュできるとのことです。
試しにやってみましょう。
実は今日、新しいMacBookが届いたので、環境構築ついでのメモも兼ねています。
ということで以下、Mac環境向けとなります。
■下準備
Xcode
AppStoreからインストール
JDK
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Android Studio
https://developer.android.com/sdk/index.html
上記は単にcocosやるだけなら不要かもですが、いずれ必要になるのでいれちゃいます。
Android SDK
(Android StudioのDLページと同じです。SDK Tools OnlyというところからDLできます)
https://developer.android.com/sdk/index.html
今は何も入ってないので、Android SDK Managerを立ち上げて・・
$ cd /path/to/android-sdk-macosx/tools $ ./android
最新のSDK Platformなどをインストールしておきます。
Android NDK
(もうr9系でないとダメってことはありません)
https://developer.android.com/ndk/downloads/index.html
展開はコンソールで
$ chmod 755 android-ndk-r10e-darwin-x86_64.bin $ ./android-ndk-r10e-darwin-x86_64.bin
Apache Ant
http://ant.apache.org/bindownload.cgi
Cocos2d-x v3.7
(Cocos2d-xのとこにあるのもCocos2d-JSのとこにあるのも同じです)
http://www.cocos2d-x.org/download
DLしたものはそれぞれ展開・インストールなどしておきます。
■Cocos2d-xの下準備
setupを実行して、パスなど整えます。
$ cd /path/to/cocos2d-x-3.7 $ ./setup.py
setup.pyを実行するとNDK,SDK,ANTのパスを聞かれるので入力します
->Please enter the path of NDK_ROOT (or press Enter to skip):/path/to/android-ndk-r10e ->Please enter the path of ANDROID_SDK_ROOT (or press Enter to skip):/path/to/android-sdk-macosx ->Please enter the path of ANT_ROOT (or press Enter to skip):/path/to/apache-ant-1.9.6/bin
パスを反映させます
$ source /path/to/.bash_profile
■プロジェクト作成
$ cocos new JSTestProject -p com.example.JSTestProject -l js -d /path/to/ProjectsDir/
-l jsってのが、JavaScriptで作りますよーってことです。
-l cppとすればC++での開発となります。
これで/path/to/ProjectsDir/にJSTestProjectというディレクトリができます。
$ cd /path/to/ProjectsDir/JSTestProject
HelloWorld的なプログラムが組まれているのでとりあえず実行できます。
iOS
$ cocos run -p ios
これだけでiOSシミュレーターが立ち上がり、実行されます。
Android
$ cocos run -p android -j 4
-jってのはビルドに使うコア数の指定です。
NDKでは並列ビルドができるので、全力でビルドさせてOKならコア数分、ビルド中も作業したい場合にはコア数-1あたりを指定します。
これで、実行されます。
実機を繋いでいる場合には、たぶんそれで立ち上がります。
一応、エミュレーターを使う場合の手順も書いておきますが、エミュレーターはちゃんと設定しないと、動作にハイパー時間がかかるうえに謎のエラーで落ちたりするので、基本的には実機を使ったほうが良いと思います^^;
$ android list targets
でターゲットを確認
Available Android targets: ---------- id: 1 or "android-22" Name: Android 5.1.1 Type: Platform API level: 22 Revision: 2 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in, AndroidWearRound, AndroidWearRound400x400, AndroidWearRoundChin320x290, AndroidWearSquare, AndroidWearSquare320x320, AndroidWearRound, AndroidWearRound400x400, AndroidWearRoundChin320x290, AndroidWearSquare, AndroidWearSquare320x320 Tag/ABIs : android-tv/armeabi-v7a, android-tv/x86, android-wear/armeabi-v7a, android-wear/x86, default/armeabi-v7a, default/x86, default/x86_64
こーんな感じのが出ると思いますので、idやTag/ABIsを確認して
$ android create avd -n cocos -t 1 --abi default/armeabi-v7a
で、cocos用のを作ります。
-n で名前
-t でid
–abi でTag/ABIsのうちひとつを選択します。
作ったプロファイルでエミュレーターを立ち上げます。
$ emulator -avd cocos &
で、先ほどのcocos runを実行すればOK。
Web
$ cocos run -p web
これで、ブラウザで実行されます。
なお、
$ cocos run -p web -m release
とすることで、publish/html5/ ディレクトリへ書き出されます。
やったぜ!
それでは、楽しいCocos2d-xライフを。