GLBをFBXに変換
GLBはWebで3Dモデルをやり取りするための形式で、FBXは多くのゲーム・アニメーション制作環境が読み込む形式です。ここで.glbを変換すると、テクスチャを埋め込んだバイナリFBXが得られ、そのままUnity、Unreal Engine、Mayaに読み込めます。
3Dモデル変換
またはSTL, OBJ, MTL … ファイルをここにドロップ ·
1ファイルあたり最大95 MB· 最大20ファイルまで· 30分後に削除
ファイルは当社のサーバーで処理され、30分後に削除されます。
STL と OBJ には単位が保存されません。スライサーでパーツが 10 倍や 25.4 倍小さく、または大きく表示される場合は単位が誤って読み取られているので、ここで指定してください。
Blender、CAD、スライサーは Z-up、glTF、Unity、多くのゲームエンジンは Y-up です。読み込み後にモデルが横倒しになる場合は切り替えてください。
STEP や IGES のソリッドをメッシュに変換するときに使います。細かいと曲線がなめらかになりますがファイルは大きくなります。簡易プレビューなら粗いで十分です。
PNG、JPG、SVG を入力した場合のみ使用します。レリーフは暗い部分を盛り上げます。リトフェインは背面から光を当てると写真が浮かび上がる薄いパネルです。押し出しはロゴや SVG の輪郭を平らな立体にします。
印刷するモデルの幅です。高さは画像の縦横比に従います。
レリーフやリトフェインの最大の盛り上がりの高さ、または押し出し形状の厚みです。リトフェインでは通常 2–3 mm を使います。
印刷物がまとまるように、レリーフの下に付ける土台の板です。0 は土台なしです。
このツールの使い方
- 1
.glbをアップロード
GLBファイルを1つ、または最大20個(1ファイルあたり95 MBまで)追加します。.bin やテクスチャが別ファイルになっている .gltf は、先に1つのGLBにまとめてから変換すると扱いやすくなります。
- 2
バイナリFBXとテクスチャ埋め込みのままにする
変換先はFBX、ファイルエンコードはBinary、テクスチャとマテリアルを保持はオンにすると、画像がFBXに埋め込まれます。モデルが仰向けに寝た状態で読み込まれる場合を除き、上方向の軸は「保持」のままにしてください。
- 3
変換して読み込む
FBXに変換 →を押し、ファイルをエンジンのアセットフォルダ、またはBlenderの File › Import › FBX にドラッグします。
GLBとFBXの違い:オープンなWeb形式とAutodeskの交換形式
GLBは、Khronos Groupが2017年に公開し、2022年に国際規格ISO/IEC 12113となったglTF 2.0のバイナリ形式です。1つの .glb には、12バイトのヘッダー、シーンを記述するJSON、ジオメトリと画像を収めたバイナリチャンクが入っています。レンダラーで高速に読み込めるよう設計されており、単位はメートル、Y軸が上、マテリアルは物理ベースのメタリック・ラフネスモデルに従うため、three.js、Babylon.js、AndroidのScene Viewerで同じように表示されます。
FBXはKaydara社のモーションキャプチャソフトFiLMBOXのファイル形式として始まり、2006年からAutodeskの所有となっています。独自形式で、主にAutodeskのFBX SDKを通じて仕様が示されていますが、ゲームエンジンやアニメーションツールの標準的な交換形式であり続けています。UnityのモデルインポーターはFBXをネイティブで読み込み、Unreal Engineのインポートオプションもこれを前提に作られています。Mayaや3ds Maxでは、リグ付きキャラクターをスタジオ間で受け渡すために使われます。
GLBからFBXへの変換で保持されるもの
| GLB側 | FBX側 | 読み込み後の確認 |
|---|---|---|
| メッシュ、UV、法線 | そのまま保持 | 特になし |
| ノード階層と名前 | 保持 | ピボット位置 |
| スケルトンとスキンウェイト | ボーンとスキンクラスター | エンジン側のリグタイプ |
| アニメーションクリップ、モーフターゲット | アニメーションテイク、ブレンドシェイプ | クリップ名と長さ |
| ベースカラー、ノーマル、エミッシブマップ | FBXマテリアルに埋め込まれたテクスチャ | テクスチャの割り当て |
| メタリック・ラフネスの値 | 近似値に変換 | メタリックとラフネスのマップを再接続 |
| クリアコートや透過などの拡張 | FBXに相当する機能なし | エンジン側で作り直し |
FBXをUnity、Unreal Engine、Blenderに読み込む
Unity
- 01.fbx をProjectウィンドウのAssetsフォルダにドラッグします。
- 02キャラクターの場合はRigタブでHumanoidまたはGenericを選びます。
- 03マップを編集するには、MaterialsタブのExtract Texturesを使います。
Unreal Engine
- 01コンテンツブラウザでImportをクリックし、.fbx を選びます。
- 02リグ付きモデルではImport Animationsにチェックを入れます。
- 03サイズが100倍ずれる場合はImport Uniform Scaleを確認します。
Blender
- 01File › Import › FBX (.fbx) を使います。
- 02Shadingワークスペースを開いてマテリアルを確認します。
- 03ボーンの向きがおかしい場合はAutomatic Bone Orientationを使います。
GLBからFBXへの変換後に起こる問題の多くは、ジオメトリではなくマテリアルが原因です。glTFでは、アンビエントオクルージョン、ラフネス、メタリックを1枚の画像のR・G・Bチャンネルにまとめることがよくあります。FBXの従来のマテリアルモデルにはそのまとめたテクスチャを入れる枠がないため、エンジンでは追加の画像として読み込まれ、手動で接続することになります。GLB内にWebPで保存されたテクスチャにも注意が必要です。WebPを読めるFBXインポーターは少ないため、PNGかJPEGにしておく必要があります。違いについてはWebPをJPGに変換する理由と使いどころをご覧ください。
変換先がエンジンではなく、レンダラーや3Dプリンター向けの静的メッシュである場合、FBXは適切でないことがあります。シンプルなメッシュ形式で何が保持されるかはFBXをOBJに変換をご覧ください。iPhoneのAppleのAR Quick Look向けには、同じGLBからGLBをUSDZに変換してください。
GLB
glTF バイナリ(GLB)
GLB は、2017年に Khronos Group が公開した 3D 伝送形式 glTF 2.0 のバイナリ形式です。ジオメトリ、PBR マテリアル、テクスチャ、アニメーションを、高速に読み込めるよう設計された1つのコンパクトなファイルにまとめます。Web 3D、AR ビューアー、Android の Scene Viewer、オンラインのモデルマーケットプレイスで広く使われています。古いデスクトップ向け 3D ツールや CAD プログラムの一部では読み込めません。
- 圧縮方式
- –
- 透過
- –
- アニメーション
- 対応
- 登場時期
- 2017 · Khronos Group
FBX
Filmbox(FBX)
FBX は、Kaydara が自社の Filmbox ソフトウェア用に作った 3D 形式で、2006年からは Autodesk が所有しています。メッシュ、マテリアル、テクスチャ、スケルトン、スキニング、カメラ、ライト、アニメーションを1つのファイルに保存します。Unity、Unreal Engine、Maya、3ds Max、Blender の間でゲームアセットをやり取りする標準的な交換形式です。独自仕様の形式で、エクスポーターや SDK のバージョンによって動作が異なることがあります。
- 圧縮方式
- –
- 透過
- –
- アニメーション
- 対応
- 登場時期
- Kaydara (now Autodesk)
Webサイトやマーケットプレイス、3Dスキャナーアプリのモデルを、Autodesk形式を中心としたUnity、Unreal Engine、Maya、3ds Maxのワークフローで使うために、GLBをFBXに変換します。
GLBからFBXへの変換に関するよくある質問
FBXに変換した後もGLBのアニメーションは再生できますか?
スケルタルアニメーションもブレンドシェイプ(モーフターゲット)アニメーションも両方の形式に存在するため、GLBに保存されたクリップはFBXにも引き継げます。読み込み後は、エンジンのアニメーションプレビューで各クリップを確認してください。GLBに複数のクリップがある場合、インポーターによっては分割や名前の変更が行われることがあります。
変換後、Unityでマテリアルが灰色やプラスチックのように見えるのはなぜですか?
glTFのマテリアルはメタリックとラフネスの値を使い、多くは1枚のテクスチャにまとめられています。一方、FBXのマテリアルはディフューズとスペキュラを前提に設計されています。ベースカラーとノーマルマップは通常そのまま反映されますが、メタリックとラフネスはエンジンのマテリアルエディタで接続し直す必要がある場合があります。
Blenderで使うにはGLBをFBXに変換する必要がありますか?
開くだけなら不要です。Blenderはバージョン2.80以降glTF 2.0インポーターを搭載しているため、File › Import › glTF 2.0 でGLBを直接読み込めます。変換が必要なのは、制作フローの次のツールがFBXを求める場合だけです。
バイナリFBXとASCII FBXのどちらを選ぶべきですか?
Binaryがおすすめです。ファイルが小さく、読み込みが速く、Unity・Unreal・Mayaもこちらを想定しています。BlenderのFBXインポーターはASCII形式のFBXをまったく読み込めません。ASCIIを選ぶのは、スクリプトや差分ツールでファイルをテキストとして読む必要がある場合だけです。
UnrealでFBXモデルが100倍大きく、または小さくなるのはなぜですか?
glTFの単位はメートル、Unrealはセンチメートルで、FBXには各インポーターが解釈する単位スケールが含まれます。サイズが100倍ずれる場合は、インポート時の均一スケールを調整するか、変換前にモデルの単位を設定し、既知の寸法で確認してください。
- FBXをOBJに変換Mixamo、Unityアセット、MayaのFBXを、MTLマテリアルとテクスチャ付きのOBJに変換。バイナリ・ASCII形式のFBXに対応し、一度に20ファイルまで処理できます。
- OBJをGLBに変換OBJとMTL、テクスチャを1つのGLBにまとめて変換。three.js、model-viewer、Shopify、Android ARに対応。スケールはメートル単位、マテリアルも埋め込みます。
- glTFをGLBに変換.gltfファイルと.binバッファ、テクスチャ画像を1つのGLBにまとめます。フォルダをZIPでアップロードするだけで、モデル・マテリアル・スケールはそのままです。
- GLBをUSDZに変換GLBモデルをUSDZに変換し、iPhoneやiPadのSafari、メッセージ、ファイルからARで配置できるようにします。PBRマテリアルとテクスチャも引き継ぎます。
- STLをGLBに変換3DプリントのSTLファイルをGLBに変換し、ウェブサイト、model-viewer、AndroidのARで表示。ミリをメートルに換算し、Z-upをY-upに直して部品を正しく立てます。