GL Transmission Format (glTF™) は、Khronos Group が開発・管理する、拡張可能なオープンスタンダードのファイル形式です。 迅速にロードできてシーンを完全に表現できるコンパクトなファイルになるように設計されています。 glTF 形式は、Unreal Engine、Twinmotion、Fab など、glTF コンテンツのインポートとエクスポートに対応するさまざまなアプリケーション間で、リッチな 3D コンテンツを共有するために使用されます。
サポートされている glTF 仕様
Unreal Engine の glTF エクスポータでは glTF 2.0 仕様がサポートされています。 このドキュメントでは、「glTF」は特に glTF 2.0 を指します。
glTF 2.0 は以前のバージョンよりもランタイム非依存になっており、 十分に確立されている物理ベースのレンダリング (PBR) ワークフローにのみ依存しています。 glTF ソフトウェア エコシステムの多くでは glTF 2.0 だけがサポートされています。
glTF ファイル形式
以下の glTF 形式をインポートおよびエクスポートできます。
| Format | Description |
|---|---|
JSON | Includes the following elements, saved separately in a directory you specify:
|
Binary | Combines the full scene description, all binary data, and all textures into a single self-contained binary file. |
glTF 拡張
glTF のような形式では、あらゆるゲーム エンジンのあらゆる機能をデフォルトでサポートすることは不可能です。 代わりに、特定の機能をサポートする拡張機能を使用して、glTF の基本モデルを拡張できます(詳細については、glTF の GitHub リポジトリにある「glTF 拡張機能の基本情報」を参照してください)。
各 glTF 拡張機能には一意の名前が付けられています。 アプリケーションは、全ての拡張機能をサポートしているかどうかにかかわらず、これらの名前を使用して、glTF ファイルに必要な拡張機能を全て識別できます。
それぞれの拡張名には、その拡張がどの程度十分にサポートされているかを表すプレフィックスが付いています。
| プレフィックス | サポート | 説明 |
|---|---|---|
KHR | Khronos ratified | 広くサポートされています。 KHR プレフィックスは、Kronos が承認した拡張専用です。 |
EXT | マルチベンダー | 複数のベンダー (企業またはアプリケーション) によってサポートされています。 |
ここでは | ベンダー | 主に単一のベンダー (企業またはアプリケーション) によってサポートされています。 |
拡張の制限事項
すべてのアプリケーションですべての glTF 拡張が実装されているわけではありません。 glTF ファイルで使用されている拡張がアプリケーションでサポートされていない場合、そのアプリケーションはそのファイルをロードできずに、その拡張が使用されていない glTF ファイルの部分だけを表示することもあります。 ただし、glTF ファイルでその拡張が明示的に要求されている場合、そのアプリケーションはそのファイルをロードできません。
Unreal Engine の glTF エクスポータでサポートされている拡張
Unreal Engine の機能の多くをサポートできるように、glTF エクスポータでは以下の拡張がサポートされています。 [glTF Export Options (glTFエクスポートオプション)] ダイアログにあるさまざまな設定を使用して、個々の拡張のエクスポートのオンとオフを切り替えることができます。 詳細については、glTF エクスポート オプションを参照してください。
Khronos による拡張
| 拡張 | サポート提供対象 |
|---|---|
ポイント ライト、スポット ライト、ディレクショナル ライト | |
ライティングなしシェーディング モデルが使用されているマテリアル | |
クリア コート シェーディング モデルが使用されているマテリアル | |
アセットごとの複数のコンパクトなマテリアル バリアント | |
頂点データのサイズを小さくし、精度を下げる | |
テクスチャ座標をタイリングおよびミラーリングする |