2014年10月4日土曜日

Cocos2d-js×Webアプリ×Google App Engine

とにかくゲームを公開したい!

個人でソフトウェアプロジェクトを作る場合は様々な制約が存在します。

お金、時間、計算資源...

なるべくお金や時間をかけずに、まずはゲーム開発を練習したい。


そういう方にはCocos2d-js×Web×Google App Engineでの開発をお勧めします。
これらのプラットフォームのメリットを紹介します。


・全て無料で出来る

Cocos2d-jsはオープンソース、GAEも基本無料ですので全て無料でスタートアップが出来ます。



・公開するまでの手順が非常にお手軽

Cocos2d-jsもGAEもデプロイが非常に簡単です。
Cocos2d-jsはコマンドラインで一行、

cocos compile -p web -m release

とだけやれば、リリースビルドが出力されます。
そしてGAEからは基本的に、

config.py update ./

とだけ打てば良い訳です。
面倒な認証などはありません。


・高いクオリティのものが簡単に作れる

Cocos2d-jsはWebアプリケーションを作るに当たってのde factoのゲームエンジンです。
非常に多機能で、煩雑なコーディングをする必要がなく、コアのデザインに集中出来ます。
また、Tiledなどのマップエディタなどがあるのでゲームを広げるのも簡単に出来ます。



要するに安い・早い・簡単ということです。
試しに動かしてみたいゲームのプロトタイプを作る時などに活用してみてはいかがでしょうか。




ついでに、Cocos2d-jsの開発環境を整える所から、Google App Engineでデプロイするまででいくつかつまずいた点があったので並べます。

Points


・setup.pyを実行後はシステムを再起動する

setup.py後に再起動しなくても、cocos newで新しいプロジェクトが作れてしまう。サンプルアプリも動いてしまう。しかし、自作のプロジェクトをコンパイルしようとすると、何故か一部失敗する。どうしてかと思っていたら、システムの再起動を忘れていました。



・相対パス

Web開発の基本ですが、改めて。Cocos2d-jsの出力するhtmlは相対パスで他のファイルを指定しています。その為、ローカルではそのまま実行することが出来ません。ChromeやFire Foxなどの開発環境を使いましょう。Web開発のIDEはブラウザと連携を取るものが多いです。例えばCocos2d-jsの推すWebStormはChrome Integrationがあり、Cocos2d-jsを使うならば最も効率の良いIDEでしょう。



・app.yamlのパス

またもパスの問題です。こちらは、Google App Engineに由来する複雑さです。
GAEにデプロイするにはapp.yamlで開発環境のパスから、Web上でのパスに対応付けをしなければなりません。これがCocos2d-jsにはなかなかに厄介。出力されるフォルダはhtml5となっているでしょうから、これをまるまる指定してWeb上でのルートディレクトリとしてしまいましょう。
GAEのローカルデバッグ環境の問題点として、app.yamlの構成上ではパスは通っていないのにローカルでパスが通っている為に異なる挙動を示してしまうことがあることです。ローカルだとうまく言っていたのに、デプロイするとfile not foundとなる場合は、app.yamlのパスを確認する必要があります。




0 件のコメント:

コメントを投稿