glTFとは ?
glTFは、Khronos Group Inc.が提唱しているオープンソースの3D形状/シーンを格納するファイルフォーマットです。
WebGLでの標準フォーマットとして採用されています。
また、様々な3Dツールからの入出力、形状データの受け渡し、VRやAR環境でも使用されています。
以下はglTFフォーマットの仕様です(英語)。
https://github.com/KhronosGroup/glTF/blob/master/specification/2.0/README.md
主にglTF2.0が使用されます。
実例として、チュートリアルの「glTFフォーマットの活用/ARで形状を見る」もご参照くださいませ。
Shade3D Professional ver.21以降で、標準機能としてglTF形式のエクスポート/インポートができるようになりました。
ver.21以降については「glTFインポート/エクスポートの機能 (ver.21)」もご参照くださいませ。
glTFフォーマットの形式
拡張子gltfのものと拡張子glbのものがあります。
配布用のglTFファイルとしてglb形式が採用される場合が多いです。
拡張子がgltfのファイルはテキスト形式となり、別途データを格納した拡張子binのファイル(バイナリ)、画像ファイルとしてpngまたはjpeg形式を参照します。
拡張子がglbのファイルはバイナリ形式となり、gltf/bin/png/jpegファイルが1つのファイルにパックされています。
glTFで表現できるもの
- シーンの階層構造を保持
- キーフレームアニメーション(ボーン+スキンの対応)
- PBRマテリアルの表現
- ベースカラー色/ベースカラーテクスチャ
- ベースカラーのAlphaチャンネルを使った半透明表現 (AlphaMode = BLEND)
- ベースカラーのAlphaチャンネルを使ったピクセル透過表現。木の葉などで使用 (AlphaMode = MASK)
- メタリック値/メタリックテクスチャ
- ラフネス値/ラフネステクスチャ
- 法線マップの強さ/法線マップテクスチャ
- オクルージョン値/オクルージョンテクスチャ
- 発光色/発光テクスチャ
- 頂点カラーの反映
- 1メッシュにつき、2つのUVレイヤを保持
- マテリアルとして、メッシュの面の両面描画(DoubleSided)/片面描画指定
glTFはPBRマテリアルと相性がよく、PBRマテリアル対応のツール/リアルタイムエンジンとの形状の受け渡しに向いています。