いちおくまんえん

最近はcocos2d-xでゲームアプリ「いちおくまんえん」の制作がメインです。 あとアニメも少々・・

CocosCodeIDEとluaでプロジェクト作成

きのうから環境構築でドハマりしてました(;´∀`)


いやー慣れないことすると大変ですねw


ichiokumanyen.hatenablog.jp

で触れたとおり、現在の最新バージョンは、cocos2d-xが3.5、CocosCodeIDEは1.2.0になってます。


これから始めるならやっぱり最新版でやりたいじゃない?(・∀・)

というわけで、最新版をひと通り揃えます。

あ、一応先に言っておきますが、Windows8.1 64bitがメイン開発マシンになります。

でもMacでも動作確認はしてあるのでご安心を!


本当は慣れているMacC++言語でやりたいんですが!

あ え て Windowslua言語でやります!

さらにCocosCodeIDEで開発します( ・`д・´)補助的にADTに含まれるEclipseXcodeを使う感じで

必要なものリスト

  • 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

http://www.oracle.com/technetwork/java/javase/downloads/index.html

  • Ant(1.9.4)

http://ant.apache.org/bindownload.cgi

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をインストールします。

起動します。

f:id:ichiokumanyen:20150414214411j:plain

ワークスペースは適当に設定します。

f:id:ichiokumanyen:20150414214431j:plain

ネットワークの許可を与えます。

f:id:ichiokumanyen:20150414214655j:plain

起動したらLuaを選びます。

f:id:ichiokumanyen:20150414214817j:plain

cocos2d-xの場所とconsoleの場所を指定します。

f:id:ichiokumanyen:20150414214927j:plain

Android周りのビルドに必要なものの場所を指定します。

f:id:ichiokumanyen:20150414215028j:plain

実はこれでさっきcocos newで作ったものをインポートしたら完了でした(´・ω・`)



でも、cocos newで作ったプロジェクトは構造違うので、CocosCodeIDEに取り込めないとかどっかで読んだんです。
なので最初は下記の記事の方法そのまま試してみたんです。

dev.classmethod.jp

インターフェイス変わってたりするのは考えながら何とかしつつ進めたんですが、新規プロジェクトが作れない∑(゚Д゚)

なんか無理やりやってみたけど作成中のまま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を入れることにしました。ほぼ個人利用に近い形なら無料で使えます。

www.buildinsider.net

Visual Studio Communityインストール後にwin32用のruntime自分でビルドしたら、変にコードいじらなくてもちゃんと動きました。
cocosの事だから、今後もそういうプリコンパイルされて同梱されてたものがなくなったりしそうなので、
Visual Studio Communityを入れておくと自分で対処出来て良いですね。


あれ?でもこれcocosシミュレーターには送れるけど、AndroidとかiPhone用のアプリ作る時どうすんねん(´・ω・`)となって
よく分からんので、cocos newでプロジェクト作って比較してみる。あれ?普通にインポートしたらいけんじゃね?

インポートしてみて実行してみた。

おっ、いけた。


・・・と思ったけど始まらない。


あ、エラーダイアログ出てきた('A`)

f:id:ichiokumanyen:20150414220318j:plain

たぶんポートがどうのこうので繋がりませんってことだと思うけど、よく分からない。
Cocos Code IDE 1.1.0 Released! | Cocos2d-x
CocosCodeIDE 1.1.0のアップデートでデフォルトを10000にした?的なこと書いてるからそれが一致してない?のか

色々試してる内にCocosCodeIDEから作成したプロジェクトから、ネイティブコードくっつける方法も分かったので調査中断。

f:id:ichiokumanyen:20150414221020j:plain


とりあえず、CocosCodeIDEの1.1とCocos2d-xの3.4の組み合わせならなんとかなるから、これで妥協するかと思い始めました(´・ω・`)


あ、そういやMacで試してなかった。もしかしたらMac版ならなんの不都合もなくいけるんじゃないの!?




あぁやっぱり今回もダメだったよ(ルシフェル


そうだ!CocosCodeIDEの1.2とCocos2d-xの3.5の組み合わせでcocos newで作ったプロジェクトをインポートすれば!!(しつこい



ああああああああ!!!できたああああああああああ!!!!

f:id:ichiokumanyen:20150415015003p:plain


Windowsでも試してみる。

f:id:ichiokumanyen:20150414223049j:plain

いけた( ・`д・´)


何やったんやこの無駄な遠回り・・。
いや、でも結構勉強にはなったし良しとしよう(・∀・)


これでWindowsで高速シミュレーター且つ、ブレークポイント貼ってデバッグも出来る環境が整いました\(^o^)/

デバッグ中にコードいじって即、反映っていうLiveCoding

わたし、気になります!!


さーてやるぞー!