glTF

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ナビゲーションに移動 検索に移動
glTF
開発元 Khronos Group
初版 2015年10月19日(3年前) (2015-10-19[1]
最新版 2.0 / 2017年6月9日(2年前) (2017-06-09[2]
リポジトリ github.com/KhronosGroup/glTF
プラットフォーム クロスプラットフォーム
サポート状況 Active
種別 3DCG
公式サイト Khronos.org/glTF
現在 17 September 2017
テンプレートを表示

glTF (GL Transmission Format)JSONによって3Dモデルやシーンを表現するフォーマットである。Khronos Group 3D Formats Working Groupによって"3D界のJPEG"と銘打って開発され、APIを問わないランタイムアセット配布フォーマットとしてHTML5DevConf 2016において発表された。glTFはWebGLなどのAPIを利用するアプリケーションのためのランタイムや3Dシーンの圧縮・軽量化を行うなど効率的で互換性の高いアセット配布フォーマットである他、3DCGソフトウェアやサービスのための共通出版規格になることも意図している。

歴史[編集]

2012年3月、KhronosはCOLLADAとWebGLの活用に関する構想のためのミートアップを行った[3][4][5] 。 その際にFabrice Robinetが外部のバイナリデータを参照する効率的なJSONフォーマット案の実装を希望した。SIGGRAPH 2012のWebGLミートアップでBrandon JonesとFabrice Robinetによって"WebGL TF (WebGL Transmissions Format)"と題した形式のデモが行われた。[6]

2013年3月には、Google Earth APIのオープンな代替であるCesiumが"独自のアセット形式を新しく策定する"代わりに[7]glTFを採用する旨を発表した。

その後の2015年8月10日には、現在は名を変えてOGC Community Standardとなっている3D Tilesが空間データ構造やメタデータ、巨大でヘテロジニアスな3D空間データセットの整形のための記述をglTFに加える形で構築された。[8][9][10]

glTF1.0[編集]

2015年8月19日、glTF1.0の仕様が公表された。[11]

2016年6月ジョン・カーマック 曰く:

"長きに渡って、画像や音声、動画やテキストにあるような、効率的、可用性のある3Dシーンの規格は求められていた。ただの編集フォーマットに留まらず、プラットフォームに高度に最適化されたアプリケーションから、インターネットに繋がった自宅の端末まで、つまり作成から消費までの多様なアプリケーションで直接用いることのできるようなものである。"[12]

SIGGRAPH 2016においてOculusは独自のovrsceneフォーマットとの類似性を根拠にglTFとの親和性を主張した[13]

2016年6月、MicrosoftはKhrnos Groupの3D Formats working groupに参加し、[14] glTFの策定に加わった。

2016年12月、Archilogicは3Dの見取り図をglTFで出入力できる機能をWebベースの3Dモデルエディタに追加した。[15]

glTF2.0[編集]

2017年3月3日のGDC WebGL/WebVR/glTFミートアップにおいて、MicrosoftがglTF2.0を採用し、ペイント3DやView 3D、3Dモデル共有サイトのRemix3D、Babylon.js、 Officeなどの自社製品で共通のアセットフォーマットとして使用することを発表。[16][17] フラウンホーファーIGDやペンシルバニア大学の大学院生らと共にglTF2.0アセットをWebGL、DirectX、Vulkanでレンダリングするデモを行った。[18] 同じ場ではSketchfabがglTF2.0のサポートを発表した。[19]

同じく2017年3月にGoogleは3Dメッシュの圧縮形式であるDracoをglTFに統合させる拡張を発表した。[20]

glTF2.0はもともとglTF1.0.1(後のglTF1.1)として開発が開始され、2016年6月当時はglTFバリデータの開発中に見つかった不備の修正を行うためのバグフィックスリリースであった。[21][22] 折しもフラウンホーファーにより急速に発達した物理ベースレンダリング(PBR)のための拡張が提案されたこともあって、[23] glTF1.1はAPI中立なPBRを実現すべく以下に挙げられる新機能を加えてglTF2.0となった: [24]

  • 標準でメタリック・ラフネス、拡張でスペキュラ・発光のモデルに対応したPBRマテリアル。[25]
  • 表情アニメーションなどのためのモーフターゲットや差分データ。
  • glTF1.0のバイナリ拡張(glb) のコア仕様への統合。
  • スキーマの微調整、及び曖昧な領域やパフォーマンスのための破壊的変更。トップレベルのプロパティを高速化のためにオブジェクトから配列に変更したことなど。[26]

glTF2.0は2017年6月5日のWeb3D 2017 Conferenceで正式に公示された。[27]

8月3日、SIGGRAPH glTF BOFにおいて、MicrosoftによるMinecraftのglTF出力、AutodeskによるForgeのglTF入力、MozillaとGoogleによるA-Frame上でのglTFアセット表示などのデモが行われた他、Sketchfab上のglTFアセットの数が十万を超えたことが発表された。

2017年9月7日には、Blender はglTF出力プラグインの開発を発表し[28]、2018年9月現在はサードパーティプラグインとして存在している。

2017年9月時点で、Apple Watch Series 3のWebサイト はglTFを使用している。[29]

2018年2月20日、Facebooは発表しのglTFを用いる3D投稿のベータテストを実施[30][31] し、レゴの3Dモデルのデモを発表した。[32]

2013年のNORADサンタ追跡はサンタとトナカイのモデルにglTFを用いていた。

Unityにおける出入力対応[33] や複数エンジンを搭載したビューワーやバリデータの開発も進んでいる。[34] 2018年6月19日、Oculus Homeはバージョン1.27でglTF2.0に対応した。[35][36]

GLB[編集]

glbフォーマットはglTFのバイナリ形式であり、テクスチャを外部ファイルを参照することなく同梱することができる。Facebookの3D投稿の標準フォーマットである。

glTFのロードマップ[編集]

2017年6月30日からglTFの次の仕様や拡張、エコシステムについての議論がGitHubにおいてなされている。[37]

批判[編集]

ベテランのエンジン開発者であるEric Lengyelは、glTFはCOLLADAやOpenGEXのような既存の3D互換フォーマットと比較すると設計が尽くされておらず柔軟性を欠いていると批判した。[38]

ソフトウェアエコシステム[編集]

 Three.js、BabylonJS、CesiumPEXxeoglA-Frameを始めとする多くのオープンソースWebGLエンジンにglTFの読み込み機能が搭載されている。

オープンソースのglTFコンバータも存在し、COLLADAFBXOBJからの変換が可能である。Assimp は出力にも対応している。

Blenderをはじめ3ds Max(Verge3Dエクスポーターを使用)、MayaModo、Microsoft ペイント3D、Substance Painterなど様々な3DCG作成ソフトウェアがglTFの出力に対応している。[39]

オープンソースの glTFユーティリティライブラリJavaScript, Node.js, C++, C#, Java, Go, Rust, Haxe, Ada, TypeScriptなどの言語で実装されている。

3DモデルがglTFの仕様に適合しているかどうかを確認できるオープンソースのglTFバリデータ が公式に提供されている。[40]

glTFの公式GitHubリポジトリでは対応ソフトウェアなどのリストが更新されている。

参照[編集]

参考文献[編集]

  1. ^ Khronos Finalizes glTF 1.0 Specification - Khronos Group Press Release”. 2018年9月13日閲覧。
  2. ^ KhronosGroup/glTF”. 2018年9月13日閲覧。
  3. ^ https://www.khronos.org/assets/uploads/developers/library/2012-GDC-COLLADA-WebGL-KITE-meetups/COLLADA%20Meetup%20GDC%20Mar12.pdf
  4. ^ https://www.youtube.com/watch?v=xhR-vya1zRU&feature=youtu.be&t=1510
  5. ^ https://www.youtube.com/watch?v=vhPGVzClUBY&feature=youtu.be&t=280
  6. ^ https://www.khronos.org/webgl/wiki/Presentations#SIGGRAPH_2012_WebGL_BOF
  7. ^ http://blog.virtualglobebook.com/2013/03/how-i-got-involved-in-gltf-and-khronos.html
  8. ^ Cesium 3D Tiles”. 2018年9月13日閲覧。
  9. ^ OGC is considering a proposed work item for 3D Tiles as a Community Standard”. 2018年9月13日閲覧。
  10. ^ 3D Tiles Community Standards Justification”. 2018年9月13日閲覧。
  11. ^ https://www.khronos.org/news/press/khronos-finalizes-gltf-1.0-specification
  12. ^ https://www.khronos.org/news/press/significant-gltf-momentum-for-efficient-transmission-of-3d-scenes-models
  13. ^ https://www.khronos.org/assets/uploads/developers/library/2016-siggraph/glTF-MobileVR-Oculus-BOF-Update-SIGGRAPH_Jul16.pdf
  14. ^ https://blogs.windows.com/buildingapps/2016/10/28/bringing-3d-to-everyone-through-open-standards/#vPc4g6svcBfmMRMy.97
  15. ^ https://spaces.archilogic.com/blog/gltf-import-export
  16. ^ Trevett, Neil (2017年3月2日). “Microsoft announces at #Khronos #WebGL meetup that they will be using #glTF 2.0 as the 3D asset format across their product linepic.twitter.com/qsLymcSIhX” (英語). @neilt3d. 2017年9月26日閲覧。
  17. ^ Cozzi, Patrick (2017年3月3日). “glTF is at the core of Microsoft's 3D for Everyone vision thanks to @iamSBTron and @bghgary. Paint 3D, Viewer 3D, remix3d, Babylon, Office!!pic.twitter.com/3jRsk9Rilx” (英語). @pjcozzi. 2017年9月26日閲覧。
  18. ^ Bhatia, Saurabh (2017年3月3日). “webGL/webVR/glTF meetup - the same glTF 2.0 asset rendered on webGL, DirectX and Vulkan!pic.twitter.com/k4Kbc79g8w” (ドイツ語). @iamSBTron. 2017年9月26日閲覧。
  19. ^ glTF 2 in Sketchfab” (2017年3月3日). 2018年9月13日閲覧。
  20. ^ KHR_draco_geometry_compression by fanzhanggoogle · Pull Request #874 · KhronosGroup/glTF” (英語). GitHub. 2017年9月26日閲覧。
  21. ^ Spec changes from 1.0 to 2.0 · Issue #605 · KhronosGroup/glTF” (英語). GitHub. 2017年9月26日閲覧。
  22. ^ Summer Code Sprint Trip Report | cesium.com”. cesium.com. 2017年9月26日閲覧。
  23. ^ [WIP PBR Materials extension by mlimper · Pull Request #643 · KhronosGroup/glTF]” (英語). GitHub. 2017年9月26日閲覧。
  24. ^ glTF 1.1 will be 2.0! · Issue #817 · KhronosGroup/glTF” (英語). GitHub. 2017年9月26日閲覧。
  25. ^ glTF – Runtime 3D Asset Delivery, The Khronos Group, (2017-09-26), https://github.com/KhronosGroup/glTF 2017年9月26日閲覧。 
  26. ^ glTF 2.0 syntax changes and JSON encoding restrictions · Issue #831 · KhronosGroup/glTF” (英語). GitHub. 2017年9月26日閲覧。
  27. ^ https://www.khronos.org/news/press/khronos-releases-gltf-2.0-specification
  28. ^ Nopper, Norbert (2017年9月9日). “#glTF 2.0 exporter is going to be shipped with Blender:https://www.youtube.com/watch?v=hJ0GpTQaShs&t=1h04m50s …” (英語). @McNopper. 2017年9月26日閲覧。
  29. ^ Cabello, Ricardo (2017年9月13日). “The new @Apple Watch website uses @glTF3D pic.twitter.com/2fOrVaiz7F” (英語). @mrdoob. 2017年9月26日閲覧。
  30. ^ “Facebook lanserar 3d-stöd. Hur gör man 3D-inlägg på Facebook?” (スウェーデン語). SoSocial.io. (2018年2月21日). http://sosocial.io/3d-inlagg-facebook/ 2018年2月22日閲覧。 
  31. ^ Richer 3D Posts on Facebook and New Ways to Share - Facebook for Developers” (英語). Facebook for Developers. 2018年2月26日閲覧。
  32. ^ LEGO” (英語). www.facebook.com. 2018年2月26日閲覧。
  33. ^ UnityGLTF: Runtime GLTF Loader for Unity3D, The Khronos Group, (2017-09-26), https://github.com/KhronosGroup/UnityGLTF 2017年9月26日閲覧。 
  34. ^ Web-based client-side preview and validation · Issue #1081 · KhronosGroup/glTF” (英語). GitHub. 2017年9月26日閲覧。
  35. ^ VR, Oculus. “June Platform Updates: 5K Video, Embedded Dash Panels, and More” (英語). https://www.oculus.com/blog/june-platform-updates-5k-video-embedded-dash-panels-and-more/ 2018年6月20日閲覧。 
  36. ^ “Oculus Discussion Forums”. Oculus. https://forums.oculusvr.com/community/discussion/66050/rift-si-release-1-27-rolling-out-to-public-test-channel 2018年6月20日閲覧。 
  37. ^ glTF roadmap - what would you like to see next in glTF? · Issue #1051 · KhronosGroup/glTF” (英語). GitHub. 2017年9月26日閲覧。
  38. ^ Comparison of OpenGEX, Collada, and glTF” (2017年8月24日). 2018年9月13日閲覧。
  39. ^ GLB Tutorials”. Facebook Developers. 2018年5月7日閲覧。
  40. ^ https://www.khronos.org/assets/uploads/developers/library/overview/gltf-overview.pdf

外部リンク[編集]