HTML5ゲームエンジンの徹底評価[日本語訳] (8) ドキュメント編＆実績編＆最終結論


- [HTML5ゲームエンジンの徹底評価 \[日本語訳\] (1) 2D・3D対応とプログラミング言語の比較](https://qiita.com/motoyasu-yamada/items/f4e03f98442b3ec164be)
- [HTML5ゲームエンジンの徹底評価 \[日本語訳\] (2) Three.jsとPixi.js](https://qiita.com/motoyasu-yamada/items/0139a933ded6f478f92a)
- [HTML5ゲームエンジンの徹底評価 \[日本語訳\] (3) PhaserとEgretEngine](https://qiita.com/motoyasu-yamada/items/0df8489e6ad3c9c8cefc)
- [HTML5ゲームエンジンの徹底評価 \[日本語訳\] (4) enchant.jsとcrafty.js](https://qiita.com/motoyasu-yamada/items/0402bf1759f823405355)
- [HTML5ゲームエンジンの徹底評価 \[日本語訳\] (5) Turbulenz, cocos2d-js, PlayCanvas, melonJS](https://qiita.com/motoyasu-yamada/items/4265dab44bf82dc27b7b)
- [HTML5ゲームエンジンの徹底評価 \[日本語訳\] (6) 各エンジンのコンセプト・設計思想・機能比較のまとめ ](https://qiita.com/motoyasu-yamada/items/1549613ccd05d40f3182)
- [HTML5ゲームエンジンの徹底評価 \[日本語訳\] (7) パフォーマンス比較編](https://qiita.com/motoyasu-yamada/items/777b50d658d47f920a4d)

# 学習

一般的には、ちゃんとドキュメントが用意されている製品を選びます。やはり開発中にはさまざまな問題が生じるからです。今どきはゲームエンジンのドキュメントやディスカッショングループなどが用意されていることがあたりまえです。次の表は各エンジンをその視点で比較しています。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/302078/ba4c2cfd-6d91-d1b5-85db-b48d1c7eb39e.png)

 
## 結論
上記の比較表からわかるように、ほとんどのエンジンでドキュメントは提供されていますが、完成度は異なります。ほとんどは英語で書かれており、国内の開発者にとっては少し難易度が高い(訳者注：中国人にとってはたぶん中国語＜英語＜＜日本語)かもしれません。Egret
とHilotエンジンがドキュメンテーションという点でもっとも優れています。その中でもEgretがもっとも優れています。開発者はedn.egret.comからたくさんの中国語のドキュメントにアクセスすることができます。Egretが、しっかりドキュメントが提供されている点と中国で人気があり情報がたくさんあるため、習熟難易度という点でもっとも優れています。

※訳者注：なのでこの結論は日本では参考になりません

# 実績編
この章では、商用アプリケーションで使われているエンジンの割合を集計することで、商用アプリケーションの実績の比較をします。どのエンジンが商用として人気があり、商用価値があるかをみえるようにします。どのエンジンを使用するかの参考にしてください。二つの視点からおおまかに分析をしました。

私は中国外のHTML5ゲーム市場についてはあまりよくわかかりませんが、中国の市場分析だけで十分な評価できる規模感はあります。国内の市場での実績からどのエンジンがより多く使われているかを確認してください。

人気があるHTML5のゲームプラットフォーム「Sina Weibo」からサンプリングをしました。一人ではすべてをサンプリングすることは無理です。クライアントはゲームアプリのURLを暗号化しているため、直接取得することはできませんので、いくつかのデバッグツールを使ってマークアップを見て、ゲームがどのエンジンを使用しているかを判断しました。最終的な統計結果は次のとおりです。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/302078/c476466c-3dbd-7c4b-e00e-56545f42cd15.png)

上記の表のように合計50本のゲームを分析しました。 50本のうち、純粋なHTML5で開発された6本、Egretで開発された30本、Cocos2d-jsの14本、Layaboxの1本、createjsが1本でした。

集計結果は次の通りです

![image.png](https://qiita-image-store.s3.amazonaws.com/0/302078/a445ac9f-cf6f-3eb2-dfae-25214909c4a0.png)

EgretとCocos2D-jsが市場のほとんどを占めています。 Egretは全体の半分以上を占め、58％のシェアに達しています。 Egretは特に中国国内のHTML5ゲーム市場で非常に強いようです。

## 補足
公平を記すると Cocosの創業者 王哲さんは異論を唱えています

<blockquote class="twitter-tweet" data-lang="ja"><p lang="en" dir="ltr">Take a look at these game engines for mobile web game :) <a href="https://t.co/B6uIHzPjVh">pic.twitter.com/B6uIHzPjVh</a></p>&mdash; Zhe Wang (@WalzerWang) <a href="https://twitter.com/WalzerWang/status/1062940891579473920?ref_src=twsrc%5Etfw">2018年11月15日</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


# まとめ

## Three.js
実績のある3Dライブラリとして、多くの実績があります。パソコン向けの3Dでは良い選択です。

## Phaser
ドキュメンテーションやチュートリアルやサンプルは非常に優れており、機能はかなり豊富です。インディーゲーム開発や小規模チームの使用に最適です。

## Pixi.js
レンダラーとしてのレンダリングパフォーマンスは非常に優れていますし、ゲームの機能はあまりサポートされておらず、熟練のプログラマーに適しています。

## Egret
優れたパフォーマンス、ワークフローの優れたサポート、中規模および大規模なHTML5ゲーム開発、より商業的なプロジェクトに適応し、商用のゲーム開発に非常に適しています。

## Enchant.js
パフォーマンスが悪い。推奨しません。

## craftyJS
ドキュメンテーションやチュートリアルは完璧ではなく、テクニカルサポートを見つけるのは難しいためお勧めしません。

## Turbulenz
パフォーマンスは優れていますが、自社のプラットフォームに密結合されており、中国国内市場には適していません。

## Cocos2d-js
古いエンジンです。性能は真ん中くらい。ワークフローのほとんどがサポートされています。推奨するエンジンの１つです。

## PlayCanvas
3Dゲーム開発エンジンで、この記事では3Dについては分析していません

## melonJS
パフォーマンスは理想的ではなく、推奨しません

## Quintus
WebGLモードはサポートされておらずパフォーマンスは悪いため、推奨しません

## Hilo
Aliのフロントエンドチームが成果物です。フロントエンドの開発エンジニアが好んでおり、ゲームの開発には適していません。HTML5を使ったインタラクティブ広告などに向いています。