この記事はGLBoost Advent Calender 2016の3日目の記事です。
GLBoost は @emadurandal さんが絶賛開発中の国産 WebGL ライブラリです。
##概要比較
まずは GLBoost がどのようなライブラリなのか、他の主要 WebGL ライブラリと比較して特徴を見ていきたいと思います。
比較項目 | GLBoost.js | Three.js | Babylon.js |
---|---|---|---|
最新バージョン | バージョン情報無し (2016.12.03) | r83dev (2016.12.01) | 2.5beta (2016.12.02) |
ファイル名 | glboost.js (429KB ※未圧縮) | three.min.js (490KB) | babylon.js (1.21MB) |
人気(watch/star/fork) | 8 / 34 / 6 | 1,863 / 29,218 / 10,112 | 378 / 3,910 / 1,002 |
作者 | emadurandal | mrdoob | deltakosh |
ライセンス | MIT | MIT | Apache v2 |
特徴 | 純国産ライブラリ。日本語でのサポートが手厚い。 | 一番人気があり情報量も多い。 | MSの中の人が中心に開発。開発言語はTypeScript |
座標系 | 右手座標系 | 右手座標系 | 左手座標系 |
レンダラの種類 | WebGL/WebGL2 | WebGL/Canvas/CSS3 | WebGL |
glTFファイル対応 | 標準 | Plugin | Plugin |
GitHub | Link | Link | Link |
APIリファレンス | Link | Link | Link |
サンプル | Link | Link | Link |
サポート掲示板 | Link | Link | Link |
##コード比較
次にコードを眺めながら、違いを見ていきたいと思います。
比較項目 | GLBoost.js | Three.js | Babylon.js |
---|---|---|---|
レンダラの初期化 |
|
|
|
シーンの作成 |
|
|
|
カメラの作成 |
|
|
|
ライトの作成 |
|
|
|
表示する物体の作成 |
|
|
|
レンダリング |
|
|
|
なんとなく、雰囲気が伝わったでしょうか?
##その他比較サンプル
最後に、各種サンプルへのリンクを紹介したいと思います。GLBoost への移植等の参考になれば幸いです。
-
各種 WebGL ライブラリによる基本図形表示サンプル
http://qiita.com/cx20/items/0fa19c96aa6470d98807 -
各種 WebGL ライブラリと 3D 物理演算ライブラリの組み合わせ
http://qiita.com/cx20/items/3ebed669fb9c9e797935 -
各種 WebGL ライブラリの glTF 対応状況
https://github.com/cx20/gltf-test