CocosCodeIDEとluaでプロジェクト作成
きのうから環境構築でドハマりしてました(;´∀`)
いやー慣れないことすると大変ですねw
で触れたとおり、現在の最新バージョンは、cocos2d-xが3.5、CocosCodeIDEは1.2.0になってます。
これから始めるならやっぱり最新版でやりたいじゃない?(・∀・)
というわけで、最新版をひと通り揃えます。
あ、一応先に言っておきますが、Windows8.1 64bitがメイン開発マシンになります。
でもMacでも動作確認はしてあるのでご安心を!
さらにCocosCodeIDEで開発します( ・`д・´)補助的にADTに含まれるEclipseとXcodeを使う感じで
必要なものリスト
- Cocos2d-x(V3.5)
- CocosCodeIDE(V1.2.0)
- Cocos(V2.2.1)
http://www.cocos2d-x.org/download
- ADT(最終版、AndroidStudioがデフォルトになった為、直接叩くしかない)
linux 64 bit: http://dl.google.com/android/adt/adt-bundle-linux-x86_64-20140702.zip
linux 32 bit: http://dl.google.com/android/adt/adt-bundle-linux-x86-20140702.zip
MacOS X: http://dl.google.com/android/adt/adt-bundle-mac-x86_64-20140702.zip
Win32: http://dl.google.com/android/adt/adt-bundle-windows-x86-20140702.zip
Win64: http://dl.google.com/android/adt/adt-bundle-windows-x86_64-20140702.zip
- NDK(r10d)
https://developer.android.com/tools/sdk/ndk/index.html
- Java SE(8u40)
http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Ant(1.9.4)
http://ant.apache.org/bindownload.cgi
- Python(ver.2.7.8)
https://www.python.org/download/releases/2.7.8/
あ、過去にした社内の勉強会の資料に少し古いですが、用意するものとかプロジェクト作るところとかは、大体同じなので参考に!
さて、プロジェクトを作ります。
cocos new LuaTest -l lua -p com.example.lua.test
叩いた場所に出来た、LuaTestディレクトリがプロジェクトになってます。
出来上がったディレクトリに移動して
cocos run -p android
cocos runして貰えれば対象のプラットフォームのアプリがビルドされて、シミュレーターなり実機に転送されます。
とまぁここまではいいんですよ。いろんな人が記事書いてくれてるし書籍もあるし、いつも通りなので!
問題はこのlua言語のプロジェクトをCocosCodeIDEでどうにかするってところです。
ほぼ本家になりつつある中国ではLuaが主流らしいのですが、なかなか日本の人たちは手を出さないよね。
いや、もしかしたら結構使われてるのかもしれないけど、情報が少ない(´・ω・`)
そもそも何も知らないのに最新版でやるとか言い出すからややこしい(ノ∀`)タハー
とりあえず、CocosCodeIDEをインストールします。
起動します。
ワークスペースは適当に設定します。
ネットワークの許可を与えます。
起動したらLuaを選びます。
cocos2d-xの場所とconsoleの場所を指定します。
Android周りのビルドに必要なものの場所を指定します。
実はこれでさっきcocos newで作ったものをインポートしたら完了でした(´・ω・`)
でも、cocos newで作ったプロジェクトは構造違うので、CocosCodeIDEに取り込めないとかどっかで読んだんです。
なので最初は下記の記事の方法そのまま試してみたんです。
インターフェイス変わってたりするのは考えながら何とかしつつ進めたんですが、新規プロジェクトが作れない∑(゚Д゚)
なんか無理やりやってみたけど作成中のまま1時間以上待たされ、たぶんダメになってるので強制終了。
戻ってきたらエラーログにエラー出てるし、ワークスペース綺麗にして何度か試してみたけどダメ。
そして分からない(´;ω;`)ブワッ
何の情報もないまま最新版は無茶かーと思って、とりあえずCocosCodeIDEの1.1とCocos2d-xの3.2の組み合わせでやってみる。
出来た(゚∀゚)
でも違うねん・・・。
せめて、1個前のやつにしようとCocos2d-xは3.4に変えてやってみる。
あれ?あかんで?
【cocos2d-x.jp community】に同じように困ってた人がいて、その助言の方法でいけた。
https://www.facebook.com/groups/cocos2dxjp/
cocos/cocos2d/Cocos2dConstants.lua の 620行目の上にとりあえず、cc.AsyncTaskPool = cc.AsyncTaskPool or {} 入れとくと動くと思うよ。標準で入ってるWin32のシュミレーターが対応してないようなんで、自分でVCとかでソースからコンパイルできるなら一番いいと思う。
cocos/cocos2d/Cocos2dConstants.luaいじったら解決した。で、色々試行錯誤してる内にVisual Studioもいるんじゃないか?となってVisual Studio Communityを入れることにしました。ほぼ個人利用に近い形なら無料で使えます。
Visual Studio Communityインストール後にwin32用のruntime自分でビルドしたら、変にコードいじらなくてもちゃんと動きました。
cocosの事だから、今後もそういうプリコンパイルされて同梱されてたものがなくなったりしそうなので、
Visual Studio Communityを入れておくと自分で対処出来て良いですね。
あれ?でもこれcocosシミュレーターには送れるけど、AndroidとかiPhone用のアプリ作る時どうすんねん(´・ω・`)となって
よく分からんので、cocos newでプロジェクト作って比較してみる。あれ?普通にインポートしたらいけんじゃね?
インポートしてみて実行してみた。
おっ、いけた。
・・・と思ったけど始まらない。
あ、エラーダイアログ出てきた('A`)
たぶんポートがどうのこうので繋がりませんってことだと思うけど、よく分からない。
Cocos Code IDE 1.1.0 Released! | Cocos2d-x
CocosCodeIDE 1.1.0のアップデートでデフォルトを10000にした?的なこと書いてるからそれが一致してない?のか
色々試してる内にCocosCodeIDEから作成したプロジェクトから、ネイティブコードくっつける方法も分かったので調査中断。
とりあえず、CocosCodeIDEの1.1とCocos2d-xの3.4の組み合わせならなんとかなるから、これで妥協するかと思い始めました(´・ω・`)
あ、そういやMacで試してなかった。もしかしたらMac版ならなんの不都合もなくいけるんじゃないの!?
あぁやっぱり今回もダメだったよ(ルシフェル
そうだ!CocosCodeIDEの1.2とCocos2d-xの3.5の組み合わせでcocos newで作ったプロジェクトをインポートすれば!!(しつこい
ああああああああ!!!できたああああああああああ!!!!
Windowsでも試してみる。
いけた( ・`д・´)
何やったんやこの無駄な遠回り・・。
いや、でも結構勉強にはなったし良しとしよう(・∀・)
これでWindowsで高速シミュレーター且つ、ブレークポイント貼ってデバッグも出来る環境が整いました\(^o^)/
デバッグ中にコードいじって即、反映っていうLiveCodingが
さーてやるぞー!