しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

Cocos2d-x with luaを使ってゲームをリリースしました

先日、初めてCocos2d-xを使ったゲームをリリースしました。
今回はCocos2d-xの知見やCocos2d-xの感想を書いてみようと思います。

Cocos2d-xとは

Cocos2d-xとはゲーム作りの環境です。
C++ or lua or jsでゲームを作りそのコードからiPhoneAndroid向けのバイナリを生成する事ができるものです。

Cocos2d-xを使ったゲーム開発の流れ

下記の記事でも書いたのですが、cocos2d-xを使った開発の流れは下の通りです。

  1. Cocos2d-xのサイトからCocos2d-xのコードをダウンロードする
  2. cocos newコマンドでプロジェクトを作成する
  3. cocos2d-xソースコードをゲームを作っていく
  4. ゲームが完成したらXcodeAndroid-studio等、各環境でアプリのバイナリを生成して申請する

llcc.hatenablog.com

Cocos2d-xを使った感想・意外だった事

Xcode/Android studioでビルドできた

最初はcocos2d-xってアプリの作成からリリースまで全部Cocos2d-xで完結するかと思ってたのですが全然そんな事なかったです。
cocos2d-xXcodeのプロジェクトファイルを生成してくれるのでそれを使ってXcodeでアプリを起動できます。
cocos2d-xよりもXcodeの方が早かったので、後半はずっとそっちを使ってました。

それと広告の表示・フォントの追加・アイコンの設定といった環境ごとに実装が必要なものもあり、その辺りはXcodeを使って設定/実装していました。

情報がなさすぎて辛かった

cocos2d-xLuaを使って開発をしたのですが、情報がなさすぎて辛かったです。
Luacocos2d-xの生まれ故郷である中国では主流になってると聞いて使ってみました。
しかし日本ではC++が主流なようで、cocos2d luaで調べても出てくるのはC++の情報か中国語の情報ばかりでした。
更にCocos2dは去年バージョン3へ移行して書き方が結構変わった事・Cocos2d-IDEが2ヶ月くらい前(2015年5月)にeclipseベースからInteli-jベースに移行してしていたりと、変化が大きくて過去の情報が役に立たない事も多かったです。

Androidアプリ未経験だと辛かった

上に書いたように最終的なビルドは各IDEで行う必要があるのですが、それが難しかったです。
普通のネイティブ言語で作ったアプリとは少し設定が異なっているので、その辺りに詳しくないとかなりはまります。
実際自分のアプリはまだAndroid版が出せていないです。

まとめ

Cocos2d-xは一回でiPhone/Android用アプリが作れて非常に便利です。
しかし情報の少なさ・ネイティブで作るアプリとは違った設定をしているのでハマる事が多いです。
使うとしたら一度各環境でネイティブアプリを作ってからだとスムーズに行きそうだと感じました。