環境構築から1ヶ月も経ってるけど、チュートリアル的なやつのまとめ

Cocos2d-xチュートリアル

Cocos2d-x v3チュートリアル 1

Cocos2d-x本家のサイトのチュートリアルの和訳。
Cocos2d-xの構造を実際にサンプゲルームを開発する感じで解説してくれてる。
元のサンプルゲームはJavaScriptで作られているが、訳者がC++に書き換えてくれている。

サンプルゲームを作る上で触る要素は以下の通り

  • Cocos2d-x基本構造
  • 画像制御、Frameアニメ(パラパラアニメ)
  • TextuerPacker
  • 物理エンジン
  • タイルマップ(レベルデザイン)
  • タッチイベント
  • サウンド制御

なお、サンプルゲームはPC前提っぽい作りでスマホ用に最適化されているわけではないので注意。
Cocos2d-x自体がマルチプラットフォームなのでスマホでも動作させられるし、タッチイベントもちゃんと機能するけど手持ちのAndroidで動作させるとPC上でデバッグした時と大分挙動が変わった。

GitHub - parkour-game-with-javascript-v3.0

チュートリアルで使用されているソースコード(本家)、全部JavaScript。
↑のサイトから本家へリンクが貼られているがNotFoundになってしまっている。
画像・音といったリソース類はGitHubから取ってきて使った。

cocos2d-x 3.9 チュートリアル(Mac OS, C++)前半

↑のサイトで使用しているのはCocos2d-xのv3.0で現行最新のv3.9とは少し違うところがある。
そこを補完してくれているサイト。
Macとなっているけどソースコードなので関係無い。

その他参考サイト

Cocos2d-xの導入的な感じ。
Cocos2d-xのバージョンはもう3になってもうすぐ2年が経とうとしているけど、まだまだ旧バージョンの記事が多い。
Cocos2d-xは2から3への移行時にソースコードが大きく変わっているので一度目を通しておくと他の記事を読むときにも助かるような気もする。

チュートリアルやってみての感想

チュートリアルやれば基本部分は抑えられるっぽいんで、やってよかったと思う。
今後の開発で一番ネックになるであろう問題は間違いなくバージョンによる差異だと思う。

Cocos2d-xの現行最新バージョンはv3.9。
v3.0の正式リリースからもうすぐ2年が経とうとしているが、現状何らかの情報をググッた時に引っかかるのはv2.xが圧倒的に多い。
v2.xとv3.xはクラスの命名規則が異なるので、ソースを見ればどちらかはすぐに分かる。

だけど、「v2.xのこういうコードをv3.xにするとどうなるか?」がわからない場合が多い。
(もちろん単純にクラス名を置き換えるだけで済む場合がほとんどなんだけど)
さらに同じ3系でもv3.0とv3.9では非推奨となっているクラスが、かなりあって大変そう。
ちゃんと調べて無いけど、非推奨どころかコンパイルが通らない内容もある気がする。

Cocos2d-xはv2.6くらいの頃かな?
この頃からネット上では様々な記事が出て来だして、かなり情報が豊富になったんだと思う。
で、v3.0に色んな所が一新されて、更に2年間という月日を経てまだまだ更新がされている。
まだまだ進化していっているといういい面がある一方、情報があまり追いついていない印象。
公式見るなり英語サイト見に行くなりすれば色々違うのかもしれないけど、やっぱピンポイントの問題は個人レベルのblog記事に頼ることが多くなってしまう。
あと海外はJavaScriptの方が主体だったりするって問題もある。

とは言え、良いツールだと思うしスマホアプリ兼マルチプラットフォームって言うとCocos2d-xかUnityしか選択肢が無いんでモチっと頑張っていきます。
(選択肢はいっぱいあるけど、情報量考えるとこの2択になるって意味)