1. プログラムのインストール
次のプログラムを標準的な方法でインストールする
関連プログラムは /cocos 以下にフォルダを作って保存
関連プログラムは /cocos 以下にフォルダを作って保存
プログラム | インストール方法 |
---|---|
Xcode | Mac App Storeからインストール XCodeを起動して左上のXCode > Preferences Downloads > Componentsで次をインストール Command Line Tools iOS 6.1 Simulator (最新のものでOK) |
Cocos2d-x | 最新版のCocos2d-xをダウンロード (例: cocos2d-2.1rc0-x-2.1.3.zip) ターミナルで解凍してインストール 解凍したものも次に配置 $ cd /cocos $ unzip cocos2d-2.1rc0-x-2.1.3.zip $ cd cocos2d-2.1rc0-x-2.1.3 $ sudo ./install-templates-xcode.sh → Xcodeを起動 新規プロジェクトでcocos2d-xカテゴリのcocos2dx_box2dを選択 ProductName, Company Identifierは任意 (例: CocosSample1, jp.ne.akbob) 左上の「Run」をクリックして Simulatorが表示されればOK |
Android用Eclipse +環境設定 | Android SDK ダウンロードして 展開したものを /cocos にコピー Android NDK Mac 64bit版をダウンロードして /cocos にコピー xxxxxsdk/eclipse/Eclipse を起動 → Java SEのインストールを要求されるのでインストール→完了後Eclipseを開く → ワークスペースの設定 /cocos/workspace とする (Use this as the default and do not ask againにチェック) Welcomeタブは閉じる [プラグインの追加] Help->Install New Software work with: Android Developer Tools Update Siteに Developer ToolsとNDK PLuginsを両方選択 → ADT(左上)→環境設定 General>Workspace>Linked Resources → New Name COCOS2DX Folder 上記cocos2d-xのフォルダ C/C++>Build>Environment → Add Name NDK_ROOT value 上記NDKのフォルダ → Java>Editor>Typing (セミコロンとカッコの自動挿入) Automatically insert at correct positionのSemicolonとBracesにチェック →General Open ModeをDouble Click -> Single Clickに変更(選んだらすぐ開く) →General>Editors>Text Editors Show print margin, Show line numbersにチェック マージンカラム数を 80 → 100に →General>Workspaceの Text file encoding をSJISから Other > UTF-8に → File>New>Other Android>Android Project from Existing code Root Directoryに保存したcocos2dxの cocos2dx/ を選択 libcocos2dxプロジェクトにチェックが入っている状態でFinish |
Android用 プロジェクト の作成テスト | ターミナルでcocos2dxのフォルダで以下を実施 $ vi create-android-project.sh 先頭の NDK_ROOT_LOCAL と ANDROID_SDK_ROOTLOCALを正しく記述 NDK_ROOT_LOCAL="/cocos/android-ndk-r8e" ANDROID_SDK_ROOT_LOCAL="/cocos/adt-bundle-mac-x86_64-20130522/sdk" $ ./create-android-project.sh パッケージ名 jp.ne.akbob ターゲットID 1 プロジェクト名 Sample1 $ cd Sample1/proj.android/
$ vi build_native.sh
APPNAME="Sample1" // この下に追記
NDK_ROOT=/cocos/android-ndk-r8e
$ ./build_native.sh
Eclipseからこのプロジェクトを取り込む (さっきと同じ既存プロジェクトを取り込む)
Sample1/proj.android/
android-8がないとエラーが表示されている
Sample1プロジェクトの res/drawable-xxx/ に icon.pngファイルがないのが原因
cocos2dxのplugins/samples/HelloAds/proj.android/res/drawable-xx/ からicon.pngファイルを取り込む
(xdpiはないので何もしない。取り込むときはCopy Filesとする)
エラーがなくなるのでプロジェクトを右クリック>Run as > Android Application
AVD Error が表示 → Android Virtual Deviceを作成
Launch a new android virtual deviceを選択 > Manage > New
NexusSで作る 名前は適当(例 NexusS) Targetも 4.2.2を選択
カメラも両面Emulated、SDカード 128MB (おまけ)
Use Host GPUにチェックを入れる(重要!)
ウィンドウを閉じて前の画面で Refresh > nexus7を選択して OK
※ Nexus4/7/10でもいいが解像度が大きいと重そうなので480x800にした
もう一度 Run as > Android Application
Make your self at home 画面→ OK (次回からはロックされているので解除する)
しばらくするとアプリが起動する
Custom Locale で ja_JPを選択しておく
Eclipseを閉じるときは Always exit without prompt にチェック
[エラーケース]
※ Emulatorは標準では OpenGL2.0に対応していない
configSpecのエラーが出る(Cocs2dxActivity.javaの カラーは意図的に変更させている)
※ Debug Certificateが期限切れと表示された場合 ターミナルで
$ cd /Users/xxxxxx/.android
$ rm debug.certificate
※ 動かなかったらもう一度 Run> Run を実行
※ Icon.pngエラー icon.pngとファイル名は小文字にする |
2 iOS/Android両対応プロジェクトの作成
1) cocos2d-xのスクリプトでプロジェクトを作成
$ cd tools/project-creator/ $ ./create_project.py -project Sample2 -package jp.ne.akbob -language cpp // パッケージ名は3項目であること $ cd ../../projects/Sample2/ $ ls Classes/ proj.blackberry/ proj.mac/ Resources/ proj.ios/ proj.marmalade/ proj.android/ proj.linux/ proj.win32/ $ rm -r proj.mac proj.marmalade proj.linux proj.win32 proj.blackberry
2) [iOS] proj.ios/xxxxx.xcodeprojを開き動作確認
3) [Android] 先のlibcocos2dxプロジェクトのあるワークスペースに proj.androidのプロジェクトを追加
$ cd proj.android/ $ vi build_native.sh APPNAME="Sample2" // この下に追記 NDK_ROOT=/cocos/android-ndk-r8e $ vi jni/Application.mk // 末尾に追記 APP_PLATFORM := android-8 $ ./build_native.sh
ビルド成功後Eclipseから実行すればOK
[エラーケース] android-14, 8 とバージョンが違うというエラーが出る→APP_PLATFORMの設定でOK