GLTF 頂点圧縮

GLTFジオメトリを簡略化してエンコードし、最適化されたGLBをダウンロード。

ワークスペース

ここにファイルをドロップ

またはクリックして選択、貼り付けに対応

ツールについて

.gltfファイル(.bin、テクスチャ含む)に対応。メッシュ簡略化とMeshopt(推奨)またはDracoエンコードを適用し、最適化されたGLBを出力します。テクスチャは変更しません。処理はすべてブラウザ内で完結します。

ヒント

  • 1.binとテクスチャも忘れずにアップロード
  • 2MeshoptとDracoはどちらか一方のみ選択
  • 3簡略化とコンテナエンコードを組み合わせる

使用方法

  1. モデルをアップロード

    .gltfと関連リソースをドラッグ&ドロップ

  2. パラメータを設定

    簡略化とMeshoptまたはDracoを選択

  3. 圧縮してダウンロード

    最適化されたGLBを書き出す

設定オプションについて

頂点 / ジオメトリ

項目内容既定値 / 範囲

メッシュ簡略化

メッシュ簡略化アルゴリズムを使用して面と頂点の数を削減。デフォルトは中程度。強度を上げるとさらにサイズは小さくなりますが、曲面の詳細が失われる可能性があります。ジオメトリ密度のみを変更し、コンテナフォーマットは変えません。50%0% – 100% · step 5%

Meshopt 圧縮

glTF/GLB に EXT_meshopt_compression を適用し、面数を変えずにジオメトリバッファを圧縮。デフォルトでオン、ランタイム読み込みに最適。Draco とは排他的。STL/OBJ/FBX などの非 glTF 出力では使用されません。
  • オン推奨: デフォルト。Meshopt コンテナ圧縮を有効にします。
  • オフ: Meshopt 拡張を書き込みません。
オン

Meshopt レベル

Meshopt エンコード戦略。デフォルト「高」は通常ファイルサイズが小さくなり属性フィルタが有効、ほとんどの Web シーンに適切。「中」はより多くの属性を均一に量子化、一部のツールチェーンでより保守的。
  • 高推奨: デフォルト。より積極的な圧縮とフィルタ、通常はファイルサイズが小さくなります。
  • 中: より均一な量子化、圧縮率は通常やや低くなります。
高

Draco 圧縮

glTF/GLB に KHR_draco_mesh_compression を適用。サイズは Meshopt より小さいことが多いが、デコード負荷は大きい。デフォルトはオフ。Meshopt とは排他的。非 glTF 出力では使用されません。
  • オフ推奨: デフォルト。Draco 拡張を書き込みません。
  • オン: Draco を有効にします(Meshopt は無効になります)。
オフ

圧縮強度

Draco エンコード/デコードの速度トレードオフ、範囲 1, 10。値が高いほどサイズ優先、エンコードは遅くなります。デフォルト6はほとんどのモデルに適しています。61 – 10

エンコード手法

Draco のトポロジエンコード方式。デフォルトは Edgebreaker、三角メッシュの圧縮率が良好。Sequential は一部のストリップ/点順序シーンに適しています。
  • Edgebreaker推奨: デフォルト。一般的な三角メッシュに最適です。
  • 順次: 順序付きストリップなどの特殊なトポロジに適しています。
Edgebreaker

Quantization bits

UI の詳細設定に表示されます。Meshopt または Draco が glTF を書き出す際の頂点属性の精度。デフォルト: 位置 14、法線 10、UV 12。ビット数を下げるほどファイルは小さくなりますが、亀裂、シェーディング、UV のアーティファクトが発生するリスクが高まります。

位置ビット数

POSITION 属性の量子化ビット数(8, 16)。デフォルト14:サイズと破損リスクのバランスが良好。低すぎると隙間やジッターが発生する可能性があります。148 – 16

フォーマット情報

入力形式

拡張子:
gltf, glb
正式名称:
glTF 2.0(GL Transmission Format)
タイプ:
3Dシーン
フォーマット:
GLTF
主なツール:
Three.js、Babylon.js、Blender
説明:
glTFはKhronosが策定したオープン標準の3Dフォーマットで、3D界のJPEGと呼ばれています。JSONでシーン構造を記述し、ジオメトリデータは独立した.binファイルに格納、テクスチャは個別に参照することで、インクリメンタルロードやストリーミング配信に適しています。glTF 2.0は、Web、モバイル、ゲームエンジン間で3Dコンテンツを交換する主流フォーマットとなっています。 GLBと比較すると、glTFは複数のファイルで構成され、CDNによるオンデマンド読み込みやリソース再利用に適していますが、ファイルが分散しているため参照が失われるリスクもあります。単一ファイルのシーンを納品する場合や、共有のしやすさを重視する場合はGLBの方が安全です。読み込みプロセスを細かく制御したり、一部のリソースを頻繁に更新したりする必要がある場合は、glTFの方が柔軟です。

備考:

  • 外部リソース(.bin、テクスチャ)は一緒に保持する必要があります
  • CADワークフローには追加のツールが必要になる場合があります

対応機能:

  • 一般的な3D形式

出力形式

拡張子:
glb
正式名称:
glTF 2.0バイナリ(圧縮)
タイプ:
3Dモデル
フォーマット:
バイナリ(glTF 2.0)Draco / テクスチャ圧縮対応
主なツール:
Three.js、Babylon.js
説明:
glb-compressed形式は、Dracoジオメトリ圧縮やテクスチャ最適化により、画質を保ちながらファイルサイズを大幅に削減します。

備考:

  • DracoエンコードされたモデルはDracoデコーダーが必要です
  • 設定に応じてファイルサイズを50〜90%削減できます

対応機能:

  • Dracoジオメトリ圧縮(最大90%削減)
  • WebP/JPEGテクスチャ形式変換
  • 設定可能な強度のメッシュ簡略化
  • 元のPBRマテリアルとシーン階層を保持
Q

なぜ .gltf のままダウンロードできないのですか?

A

圧縮後のglTFは、移植性とエンジン対応のしやすさを考慮し、単一の最適化GLBとして出力されます。エンコード済みジオメトリを1つのバイナリファイルに格納する形式で、外部の.binやテクスチャに依存する.gltfより読み込みが速く、ホスティングも簡単です。

Q

MeshoptとDracoはどちらのデコードが速いですか?

A

MeshoptはWebとモバイルでの高速デコードを目的に設計されており、読み込みパフォーマンスを重視する場合の推奨デフォルトです。Dracoは通常より小さなファイルを生成できますが、デコードにより多くの時間がかかります。同じジオメトリに対して有効にできるのはどちらか一方だけです。

Q

テクスチャは保持されますか?

A

はい、保持されます。このツールはジオメトリバッファのみを処理するため、テクスチャは元の状態のまま出力GLBに埋め込まれ、画質の劣化はありません。

Q

MeshoptやDracoを使わず、簡略化だけ行えますか?

A

可能です。コンテナエンコードをオフにするとメッシュ簡略化のみが実行され、出力は簡略化されたジオメトリを持つ最適化GLBになります。バッファを再エンコードせずにポリゴン数を減らしたい場合に便利です。

Q

Dracoエンコーディングとは何ですか?

A

Dracoは、3Dジオメトリと点群を圧縮するためのGoogle製のオープンソースライブラリです。メッシュバッファを最大90%縮小でき、見た目上の損失はほとんどありません。代替のMeshoptは通常デコードが速い一方で、ファイルサイズがやや大きくなることがあります。

Q

圧縮したモデルはThree.jsで使えますか?

A

使えます。Three.jsはGLB・GLTFをネイティブに読み込み、Draco(DRACOLoader)とMeshopt(MeshoptDecoder)の両方に対応しています。プロジェクトに対応するデコーダーを組み込んでください。Meshoptのデコーダーはthreeのexamplesディレクトリに同梱されています。