UltKit

OBJをGLBに変換

OBJ、.mtlファイル、すべてのテクスチャ画像を1つのGLBにまとめ、ブラウザや商品ページ、ARビューアーで読み込めるようにします。モデルをアップロードしたり共有したりするときに、ファイル間のリンクが切れることはもうありません。

3Dモデル変換

またはSTL, OBJ, MTL … ファイルをここにドロップ ·

1ファイルあたり最大95 MB· 最大20ファイルまで· 30分後に削除

出力

ファイルは当社のサーバーで処理され、30分後に削除されます。

このツールの使い方

  1. 1

    OBJと関連ファイルをアップロード

    .obj、.mtl、テクスチャのフォルダをまとめて ZIP にしてアップロードしてください。テクスチャなしのモデルなら .obj だけでも構いません。最大20ファイル、1ファイルあたり95 MBまでです。

  2. 2

    スケールを確認

    glTF の単位はメートルです。モデルの単位の初期値は m で、Blender から書き出した OBJ に合います。CAD や3Dプリント用ツールの OBJ なら、詳細設定で mm を選んでください。

  3. 3

    GLBに変換

    GLBに変換を押し、できたファイルを model-viewer、three.js エディター、Windows の3Dビューアーなどにドロップして確認します。

OBJ は1つ欠けると壊れるファイルの集まりですが、GLB は同じモデル、マテリアル、テクスチャを Web で読み込める1ファイルにまとめたものです。

テクスチャ付き OBJ

3ファイル以上

model.obj · model.mtl · テクスチャ画像

受け渡し中に失うものがありません

GLB の結果

1ファイル

メッシュ、マテリアル、テクスチャを埋め込み

WebやARのビューアーがOBJではなくGLBを求める理由

Khronos Group は2017年に glTF 2.0 を配信用の形式として公開し、「3D の JPEG」と呼んでいます。コンパクトで読み込みが速く、編集ではなく表示のための形式です。ベースカラー、メタリック、ラフネス、法線、オクルージョンの各マップを持つ物理ベースのマテリアルを定義し、スケールは1単位1メートル、Y 軸が上向きと決められています。ジオメトリは GPU がほぼそのまま使えるバッファに格納されます。GLB はそのバイナリコンテナで、JSON の記述、ジオメトリ、画像を1ファイルに収めます。

OBJ はこうした仕組みより前の形式です。マテリアルは1990年代初めの MTL 形式によるもので、当時のシェーディングモデル向けに作られており、テクスチャは相対パスで探す別ファイルです。.obj だけを Web サイトにアップロードするとモデルは灰色で表示され、.mtl を動かすとテクスチャが見つからなくなります。そのため、Google の model-viewer、three.js、Babylon.js、Android の Scene Viewer はいずれも GLB を標準とし、OBJ は二の次としています。

OBJ

Wavefront OBJ

OBJ は Wavefront Technologies が開発した3Dジオメトリ形式です。頂点、テクスチャ座標、法線、面を列挙したプレーンテキストのファイルで、マテリアルとテクスチャは別の .mtl ファイルで参照します。ほぼすべての3Dモデリングソフト、ゲームエンジン、3Dプリント用ツールで読み込めます。OBJ はアニメーション、リギング、シーン階層に対応しておらず、MTL と画像ファイルを一緒に保管しないとテクスチャが失われます。

圧縮方式
–
透過
–
アニメーション
非対応
登場時期
Wavefront Technologies
OBJ 変換

GLB

glTF バイナリ(GLB)

GLB は、2017年に Khronos Group が公開した 3D 伝送形式 glTF 2.0 のバイナリ形式です。ジオメトリ、PBR マテリアル、テクスチャ、アニメーションを、高速に読み込めるよう設計された1つのコンパクトなファイルにまとめます。Web 3D、AR ビューアー、Android の Scene Viewer、オンラインのモデルマーケットプレイスで広く使われています。古いデスクトップ向け 3D ツールや CAD プログラムの一部では読み込めません。

圧縮方式
–
透過
–
アニメーション
対応
登場時期
2017 · Khronos Group
GLB 変換

Web ビューアー、EC プラットフォーム、AR アプリは、物理ベースのマテリアルを持つ自己完結した1ファイルを求めますが、OBJ はメッシュ、MTL、バラバラのテクスチャ画像に分かれているため、OBJ を GLB に変換する人が多くいます。

OBJをきれいにGLB変換するための準備

推奨非推奨
OBJ、MTL、テクスチャを1つの ZIP にまとめてアップロードする。OBJ を書き出した後にテクスチャのファイル名を変更する。
.mtl がテクスチャをパソコン上のフルパスではなくファイル名で参照しているか確認する。スマートフォン向けのモデルに8Kテクスチャを残す。
テクスチャは PNG か JPG を使う。glTF 2.0 のコア仕様が対応しているのはこの2つだけです。スペキュラだけのマテリアルが PBR ライティングでも同じ見た目になると期待する。
モデルが実寸で表示されるよう、モデルの単位を正しく選ぶ。GLB を編集用の元データとして使う。元のシーンは別に保管してください。

GLBのテストとその先の活用

公開する前に、結果をビューアーで開いて確認してください。Windows の3Dビューアー、three.js のオンラインエディター、glTF Sample Viewer はどれもファイルをドラッグするだけで開け、テクスチャが読み込まれたか、モデルが正しい向きかを確認できます。横倒しになっている場合は、上方向の軸を Y-up にしてもう一度変換してください。

OBJ ではなく STL から始まる3Dプリント用モデルなら、STLをGLBに変換でマテリアルの手順なしに同じ変換ができます。.bin や画像が別ファイルになった glTF を受け取った場合は、glTFをGLBに変換で、このページが OBJ をまとめるのと同じようにまとめられます。

OBJからGLBへの変換に関するよくある質問

GLBビューアーでモデルが極端に大きく表示されるのはなぜですか?

OBJ の数値がミリメートルだったのに、glTF ではすべての単位が1メートルとして読まれるため、高さ200 mm の花瓶が200メートルになってしまいます。モデルの単位を mm にして、もう一度変換してください。座標がメートルに換算されます。

OBJのマテリアル設定はどこまでGLBに引き継がれますか?

ディフューズ色とディフューズテクスチャは glTF のベースカラーに、バンプマップまたは法線マップは法線テクスチャになり、透明度も引き継がれます。スペキュラ設定は glTF のメタリック・ラフネス方式に直接対応するものがないため近似されます。光沢のある素材は、変換後にラフネスの微調整が必要になる場合があります。

GLBをShopifyの商品ページに掲載できますか?

はい。Shopify は GLB ファイルを3D商品メディアとして受け付け、回転できるビューアーで表示します。Apple 製品の AR には USDZ 版も必要で、GLBをUSDZに変換で作成できます。

テクスチャが4Kです。GLBがWeb用には重くなりすぎませんか?

画像はそのまま埋め込まれるため、4Kテクスチャが4枚あるとファイルが数十MBになることがあります。スマートフォンで表示するモデルは、OBJ を ZIP にする前にテクスチャを1024 px か2048 px に縮小してください。表示サイズでは見た目は変わりません。

GLBとglTFの違いは何ですか?

同じ形式を2通りに包んだものです。glTF は JSON ファイルで、バイナリや画像が別ファイルとして付きます。GLB はそれらをすべて1つのバイナリファイルにまとめます。アップロードや共有がしやすいので、多くのプラットフォームが GLB を求めています。