試してみる
GLB ファイルを圧縮して効果を実感
GLB または GLTF ファイルをドロップし、無料アカウントを作成すれば、圧縮済みのモデルをダウンロードできます。
GLB ファイルを圧縮する方法
ほとんどのモデルは、3 つのステップで 60〜90% 小さくなります。
- 1
モデルをアップロード
500 MB までの .glb または .gltf ファイルをダッシュボードにドラッグします。複数のモデルを一括アップロードすることもできます。
- 2
設定を選ぶ
プリセットから始めるか、Draco の圧縮レベル、量子化ビット数、テクスチャの最大サイズ、テクスチャ形式(WebP、AVIF、JPEG、PNG)をご自身で設定します。
- 3
軽量化したファイルをダウンロード
three.js、Babylon.js、<model-viewer>、Unity、Unreal で読み込める検証済みの GLB を取得できます。元ファイルと出力ファイルは 24 時間後に削除されます。
モデルに行われる処理
- Draco によるジオメトリ圧縮。 頂点位置、法線、UV を量子化してエントロピー符号化することで、ジオメトリデータを通常 80〜95% 削減します。Draco の仕組み
- テクスチャのリサイズと再エンコード。 大きすぎるテクスチャを縮小し(例:4K から 2K)、WebP または AVIF に変換します。テクスチャの多い製品モデルでは、通常これが最も大きな削減につながります。
- クリーンアップ。 重複した頂点や未使用の頂点、その他の不要なデータを削除します。メッシュのウェルド、マージ、フラット化、インスタンス化も可能です。
- 簡略化(オプション)。 高密度なスキャンデータ、フォトグラメトリ、CAD からエクスポートしたモデルのポリゴン数を削減します。
- 検証。 すべての出力は公式の Khronos glTF バリデーターでチェックされます。このバリデーターは無料のオンライン glTF バリデーターとしても利用できます。
複数ファイル構成の .gltf をお持ちですか?無料の glTF → GLB 変換ツールで 1 つのファイルにまとめるか、圧縮 API ですべてを自動化できます。
機能
時間と帯域幅を節約
GLB ファイル圧縮ツール
見た目の美しさを保ったまま、GLB ファイルのサイズを最大 90% 削減します。gltf-transform をベースにしたこの GLB 最適化ツールは、画質を犠牲にすることなく 3D モデルを効率よく処理します。
GLTF バリデーター付き
すべての GLB・GLTF ファイルを自動的に検証します。よくある問題を検出し、圧縮したモデルがあらゆる対象環境で正しく動作するようにします。
高速な圧縮 API
GLB ファイルをすばやく処理するシンプルな REST API です。手間をかけずにアプリへ GLB 圧縮機能を追加したい開発者に最適です。
独自のプリセットを作成
よく使う圧縮設定をカスタムプリセットとして保存できます。パラメーターを一度設定すれば、さまざまなプロジェクトで再利用可能です。細かい設定をすべて覚えておく必要はありません。
細かな圧縮設定
テクスチャ品質、ジオメトリの簡略化、アニメーション圧縮を調整して、求めるとおりの結果を得られます。GLB の最適化をより細かくコントロールしたいときに便利です。
丁寧なサポート
導入方法や圧縮設定についてご不明な点はありませんか?お気軽にお問い合わせください。GLB 圧縮ワークフローを最大限に活用できるよう、喜んでお手伝いします。
無料クレジットで始められる
無料アカウントを作成すると、圧縮クレジットが 1 つ付与されます。クレジットカードは不要です。この GLB 圧縮ツールがお手持ちのモデルでどれだけ効果を発揮するか試すのに最適です。
GLB のバッチ処理
1 ファイルあたり 500 MB までの GLB ファイルを複数アップロードし、まとめて圧縮できます。処理はサーバー上で行われるため、大きなモデルでもブラウザのメモリ制限に引っかかりません。
リアルタイムの進捗表示
プログレスバーとステータス表示で、GLB 圧縮の進行状況をリアルタイムに確認できます。処理が止まっていないか、エラーになっていないかと気をもむ必要はもうありません。
モデルの品質を維持
gltf-transform が負荷の高い処理を担い、モデルを小さくしながら見た目の良さを保ちます。色、テクスチャ、アニメーションはそのまま維持されます。
簡単な API 連携
わかりやすいドキュメント付きのシンプルな REST エンドポイントです。数行のコードで GLB ファイルの圧縮をワークフローに組み込めます。特別な準備は必要ありません。
GLB バリデーター内蔵
圧縮したすべてのファイルをチェックし、有効ですぐに使える状態であることを確認します。最適化した GLB ファイルをデプロイする前に問題を見つけるのに役立ちます。
コードサンプル
簡単に組み込めます
すぐに結果が欲しい場合は同期アップロード、大量のファイルをまとめて処理する場合は非同期アップロードを利用できます。使い方は以下のとおりです。
import fs from 'fs';
import path from 'path';
async function compressGLB(inputPath, outputPath) {
const fileBuffer = fs.readFileSync(inputPath);
const formData = new FormData();
formData.append('file', new Blob([fileBuffer]), path.basename(inputPath));
const upload = await fetch('https://api.compress-glb.com/api/1/files/upload/sync', {
method: 'POST',
headers: { 'Authorization': '<API_KEY>' },
body: formData
});
const [job] = await upload.json();
const compressed = await fetch(job.compressed_file_url);
fs.writeFileSync(outputPath, Buffer.from(await compressed.arrayBuffer()));
}