GLTF 頂点圧縮

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

読み込み中...

しばらくお待ちください

ツールについて

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

ヒント

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

設定オプションについて

頂点 / ジオメトリ

メッシュ簡略化

デフォルト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 は無効になります)。

圧縮強度

デフォルト6

範囲1 – 10

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

エンコード手法

デフォルトEdgebreaker

Draco のトポロジエンコード方式。デフォルトは Edgebreaker、三角メッシュの圧縮率が良好。Sequential は一部のストリップ/点順序シーンに適しています。

Edgebreaker推奨

デフォルト。一般的な三角メッシュに最適です。

Sequential

順序付きストリップなどの特殊なトポロジに適しています。

Quantization bits (advanced)

Shown under Advanced settings in the UI. Vertex attribute precision when Meshopt or Draco writes glTF. Defaults: position 14, normal 10, UV 12. Lower bits shrink files more but raise crack, shading, or UV artifact risk.

位置ビット数

デフォルト14

範囲8 – 16

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

法線ビット数

デフォルト10

範囲8 – 16

NORMAL 属性の量子化ビット数(8, 16)。デフォルト10。低すぎると陰影のむらが発生しやすくなります。

UV ビット数

デフォルト12

範囲8 – 16

TEXCOORD 属性の量子化ビット数(8, 16)。デフォルト12。低すぎるとテクスチャの這いやジッターが発生する可能性があります。

フォーマット情報

入力形式

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

備考:

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

対応機能:

  • 一般的な3D形式

出力形式

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

備考:

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

対応機能:

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

使用方法

1

モデルをアップロード

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

2

パラメータを設定

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

3

圧縮してダウンロード

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

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ディレクトリに同梱されています。

応援する