JavaScriptでネイティブ並の速度を誇るゲームを開発「Ejecta」
EjectaはCanvasとオーディオ、JavaScriptをサポートしたフレームワークでネイティブ並のiOSアプリ(ゲーム)を開発できます。
iOSアプリでゲームを開発する際にはObjective-Cを使うのが基本でしょう。WebベースであったりTitaniumのようにJavaScriptのエンジンを経由するとそれだけ速度が低下してしまいます。しかしそんな限界に果敢に挑戦するフレームワークがEjectaです。
サンプルです。JavaScriptとは思えないほどスムーズな動きです。
Ejectaはゲームとアニメーションに特化したソフトウェアで、Canvasとオーディオだけで構成されています。JavaScriptは素のJavaScriptとして実行されます。これによりHTML5のゲームは多少の変更によってより優れた速度とサウンドサポートを得られるようになるとのことです。タッチや加速度センサー、ローカルストレージも利用可能です。
EjectaはObjective-C製、MIT Licenseのオープンソース・ソフトウェアです。
MOONGIFTはこう見る
Ejectaの開発元はWebベースでのゲーム開発を行うフレームワークであるImpactJSを提供する企業になります。このImpactJSは有料ライセンスのみで提供されており、アクションゲームがWebブラウザベースとは思えないほど、スムーズに動作します。この辺りのテクニックがEjectaに凝縮されているのは間違いないでしょう。
App Storeへの提出も可能で、既に審査を通ったアプリも数多くあります。JavaScriptだから速度的に不利…と諦めてしまうのではなく、その困難をどう乗り越えるかがエンジニア力と言えるかも知れません。相当面白い試みと言えるでしょう。