Cocos2dx 8hour
-
Upload
tomohiko-okita -
Category
Documents
-
view
1.891 -
download
0
description
Transcript of Cocos2dx 8hour
Cocos2d-x8時間さわってみた
@tmokita
11
自己紹介•沖田 知彦Tomohiko Okita(株)フォーユープログラマ
•最近作ったものパズドラ攻略アプリとか
22
はじめに
33
なんで8時間?
44
• 1人日でどこまでできるか
55
Cocos2d-xとは
66
•主に2Dゲームに特化したiOS/Android用のライブラリ
•音や物理演算などのライブラリも含む• C++
77
僕のスペック
•普段はxcodeでのiPhone開発• AndroidやEclipseはほとんど素人• EclipseやAndroidSDKは入れてた• Cocos2d(notX)は少しは使ってた
88
目標
99
• Cocos2d-xを導入できるようになる• AndroidとiPhoneでソースを共有できるようにする
• ParticleDesignerとかも使いたいよね• CocosBuilderとかも使いたいよね
1010
はじまるよー
1111
1時間目
1212
1時間目• 久しぶりなのでまずはNexus7の実機でCocos2d-xじゃない普通のAndroidアプリが動かせるか確認
• 4.0以降のSDKが入ってなかったのでインストール• Nexus7のDevelopモードを探す• Cocos2d-x最新版をDL• NDKが必要らしいのでインストール
1313
2時間目
1414
2時間目• Cocos2d-xをインストール• Eclipseに取り込んでやってみるけどなんかうまくいかない
• @overrideをコメントアウト(すごい怪しい,他の環境では不要だった)
• 動いたー15
15
お昼ごはん
1616
お昼ごはん
1717
3時間目
1818
3時間目•ググってたらAppCodeとか出て来たのでそれが使えるか試す
• AndroidでAppCodeが使えるかわからなかったのでやめる
• Androidでは動いたのでiPhoneで試す• install-templates-xcode.shで速効
1919
4時間目
2020
4時間目• iPhoneとAndroidのソースの共有をしてみたい
• Androidのソースを移動させるとbuild_native.shはできるけどEclipseでなんかうまくいかない。おそらくパス的な何か
• いったんあきらめる21
21
コーヒーブレイク
2222
コーヒーブレイク
2323
5時間目
2424
5時間目• xcodeのプロジェクトに含まれるソースをAndroidの方を参照するようにした
• プロジェクトが2カ所に散らばるけどとりあえず問題なさげ
• xcodeからソースを編集してAndroidのビルドを試したりする
• 買ってから数回しか起動していないParticleDesignerを起動
2525
6時間目
2626
6時間目• ParticleDesignerで適当なプリセットをそのまま出力• xcodeに追加して実行CCParticleSystemQuad* particle = CCParticleSystemQuad::create("particle.plist");this->addChild(particle);particle->autorelease();
• Androidでも動く• しばらく感動
2727
7時間目
2828
7時間目• ねじさんが発表していたときにDLしたCocosBuilderを起動(数カ月ぶり3回目)
• さっぱりわからないのでググる
• Exampleを落とすとCocos2d(notX)のソースしかついてない
• げ、xじゃ使えないの?
• と、思ったけどそんなことは無かった。
• xではExampleに入ってるCocosBuilder読み込みとかのライブラリが標準で入ってるらしい
• すばらしいと思いつつCocosBuilderを適当に弄るがわからない
2929
8時間目
3030
8時間目• ここらへんからxcodeがおかしくなり始めるThe selected destination does not support the architecture for which the selected software is built. Switch to a destination that supports that architecture in order to run the selected software.
• ググりながらスプライトやラベルを配置してみるがうまくいかないextension::CCNodeLoaderLibrary* ccNodeLL = extension::CCNodeLoaderLibrary::sharedCCNodeLoaderLibrary();extension::CCBReader* ccbReader = new extension::CCBReader(ccNodeLL);CCNode* ccbNode = ccbReader->readNodeGraphFromFile("HelloCocosBuilder.ccbi");this->addChild(ccbNode);
3131
9時間目(補習)
3232
9時間目(補習)• CustomClassを入れてるとAssertに引っかかる?空にしたら動いた?
• zip形式はxでは使えない• CocosBuilderでPublishしてもファイルが更新されない?ことがある
• なのでPublish先のファイル(ccbi)を先に削除しておく• Androidのビルドはやり直したかったら./build_native.sh clean で
3333
まとめ
3434
導入
3535
iPhoneの場合1.xcodeをインストール
2. install-templates-xcode.sh
3.新規プロジェクトでCocos2d-x
4.実行ターゲットの設定
以上
3636
Androidの場合1. AndroidSDK+Eclipseをインストール
2. NDKをインストールしてパス設定export NDK_ROOT="installed_dir"
3. create-android-project.sh
4. <project>/proj.androidに移動してbuild_native.sh
5. EclipseにCocos2d-xのライブラリをインポート
6. Eclipseに作成したプロジェクトをインポート
7. 実行環境の設定
以上
3737
• 本当にソース・リソースは共有できた• ParticleDesignerも使えた• CocosBuilderも使えた• 両方で開発するならxcodeメインで必要に応じてAndroidをビルド
• StackOverflowが役に立った
3838
最後に
•ググると「うまくいった」という情報は多いけど「うまくいかない」という情報が少ない
•「うまくいかない」も恥ずかしがらずに共有できればもっとみんな助かるはず
3939
•ありがとうございました
4040