HTML5
cocos2d-JS
PlayCanvas
EgretEngine
TinyUnity

HTML5ゲームエンジンの徹底評価[日本語訳] (1) 2D・3D対応とプログラミング言語の比較

李海彬@Golang Language Community(Golang语言社区)によるHTML5ゲームエンジンの徹底評価 @ cloud.tencent.com の日本語訳です。

李さんより許可をいたただいています。またこちらは昨年末の記事になるので今年誰か書かないかな?


HTML5ゲームエンジンの徹底評価

最近インターネット上で「イケてるHTML5ゲームエンジン15 2016年盤」という記事を読みました。HTML5ゲームを開発のソリューションはたくさんありますが、比較されていませんでした。みなさんのお役にたてるように数日かけて、先ほどの記事に登場した12の無料オープンソースエンジンの比較分析を徹底的に行いました。

技術的な製品を比較するためには、技術的な視点だけでなく、結果に影響を与える多くの非技術的な内容も含めて、一般的には複数の比較軸があります。この記事では次のような軸で比較しています。する複数の次元があります。この記事では、以下の次元から複数の比較を行います。


  1. 2D / 3D

  2. プログラミング言語

  3. デザインコンセプトと機能

  4. ワークフロー

  5. パフォーマンス

  6. ドキュメント

  7. 採用事例


2D・3D対応とプログラミング言語の比較

ゲームのもっともシンプルな分類方法の一つは2Dと3Dで区別することです。ゲームエンジンにおいては2Dと3Dはまったく異なる製品の種別だと考えられています。もとの記事で言及されていたエンジンはとても人気があるHTML5ゲームエンジンです。多くのエンジンは、2D、3Dもしくは両方に対応しており、テーブルにまとめました。


プログラミング言語

HTML5ゲームエンジンにとって、スクリプトはJavaScriptである必要があります。JavaScript言語のみがブラウザーの上で実行できます。ですがTypeScript、CoffeeScriptやLiveScriptなどのようなAltJsがたくさんあります。言語間の直接の位置づけは異なり、言語の哲学は同じではありません。いくつかのゲームエンジンの言語選択はかなり興味深いものです。

エンジン
2D描画
3D描画
JavaScript
TypeScript

Three.js
no
YES
YES
no

Phaser
YES
no
YES
YES

Pixi.js
YES
no
YES
YES

Egret
YES
YES
YES
YES

enchant.js
YES
no
YES
no

craftyJS
YES
no
YES
no

Turbuluenz
YES
YES
YES
YES

cocos2d-js
YES
no
YES
no

PlayCanvas
no
YES
YES
no

melonJS
YES
no
YES
no

Quintus
YES
no
YES
no

Hilo
YES
no
YES
no

TinyUnity※
YES
no
YES
YES

※TinyUnityは訳者が追記/TypeScriptが使えるとJavaScriptも実質使えるということでYESとしています


2D・3D対応とプログラミング言語の比較の結論

前記事の表の通り、以下の3つのエンジンが2Dと3D両方に対応しています。


  • Egret

  • Turbulenz

  • PlayCanvas

HTML5ゲームの分野で利用されているプログラミング言語はJavaScriptとTypeScriptだけです。しかし、ほとんどのHTML5ゲームエンジンはJavaScriptを使用しています。 TypeScriptをサポートするエンジンは4つだけです。

現在のフロントエンド技術界隈の状況をふまえると、おそらく多くのフロントエンドのフレームワークやエンジンはTypeScriptに対応するでしょう。AngularJSからはTypeScript対応を開始したとアナウンスされました。フロントエンド界隈ではTypeScriptの認知度は高く、マイクロソフトはオープンソースコミュニティー界隈で上手にやっているといわざるを得ません。

・・・続く・・・

https://qiita.com/motoyasu-yamada/items/0139a933ded6f478f92a