Godot は glTF 2.0 をネイティブにサポートしており、追加のプラグインなしで GLB ファイルを読み込めます。手順は「.glb をプロジェクトのフォルダにコピーする」だけで、あとは Godot が自動でインポートし、FileSystem ドックからシーンへドラッグして配置できます。しかも公式ドキュメントは、対応する 3D 形式の一覧で glTF 2.0 を「推奨(recommended)」と明記 しています(出典: Godot Docs - Available 3D formats、2026年7月時点)。
この記事では、GLB を Godot に取り込んでゲームで使えるようにするまでの流れを、公式ドキュメントの記述に沿って解説します。バージョンは 2026 年 7 月時点の安定版(Godot Engine 4.7 系)のドキュメントを基準にしています。
※現在のFigmeeは、アップロードした絵やイラストからフィギュア風画像と3Dモデルデータ(GLB / 3MF)を生成・ダウンロードできるサービスです。実物の3Dプリント品の販売は準備中(Coming Soon)です。
Godotが対応する3D形式
公式ドキュメントが挙げている 3D シーンの対応形式は次のとおりです。
| 形式 | 位置づけ | 補足 |
|---|---|---|
| glTF 2.0 | 推奨 | テキスト形式の .gltf とバイナリ形式の .glb の両方に対応 |
| .blend | 対応 | Blender ファイルを直接扱える |
| DAE(COLLADA) | 対応 | 古くからある交換形式 |
| OBJ(Wavefront) | 対応 | 形状中心のシンプルな形式 |
| FBX | 対応 | 広く使われる業界標準形式 |
.glb については「glTF のバイナリファイル(.glb)はよりサイズの小さい選択肢で、メッシュとテクスチャの設定を含む」と説明されています。テクスチャまで 1 ファイルに入る ため、フォルダ間で移動しても参照が壊れません。この性質は受け渡しで大きな利点になります。GLB という形式そのものについてはGLBファイルとは?で解説しています。
Unity が標準では glTF に対応せず公式パッケージの追加を必要とするのに対し、Godot は最初から対応している——ここが両エンジンの分かりやすい違いです(Unity 側の手順はUnityでGLBを取り込む方法を参照)。
なぜ glTF 2.0 が推奨なのか
理由は 3 つに整理できます。
1. 参照が壊れない。 .glb はメッシュとテクスチャを 1 ファイルに内包します。テクスチャを別ファイルで持つ形式では、フォルダ構成を変えた瞬間に画像がリンク切れして真っ白なモデルになりますが、GLB ではこれが起きません。
2. リアルタイム表示を前提に設計されている。 glTF は Khronos Group が策定した、実行時に素早く読み込んで表示するための形式です。ゲームエンジンが扱う目的とそもそも一致しています。
3. 出口が広い。 同じ GLB を、Web ブラウザでの表示、他のエンジン、3D ビューアなど別の用途にもそのまま流用できます。エンジン専用形式に変換してしまうと、この汎用性は失われます。
GLBをインポートする(所要 3 分)
- プロジェクトフォルダに
.glbをコピーする(30 秒)。Godot エディタを開いた状態で、OS のファイルマネージャからプロジェクトのフォルダ(res://配下)へファイルを置きます。エディタに戻ると、FileSystem ドックに自動で現れます。 - FileSystem ドックでファイルを選択する(10 秒)。選択すると、画面の Import ドックにインポート設定が表示されます。
- Import ドックの設定を確認する(1 分)。設定はいくつかのセクションに分かれています。
- Root Type / Name: ルートノードの型と名前
- Meshes: 接線(タンジェント)の生成、LOD、ライトのベイクに関する設定
- Animation: フレームレートやトラックの最適化
- Import Script: インポート後の処理を自動化するスクリプト
- 設定を変えたら
Reimportを押す(20 秒)。押すまで変更は反映されません。 - シーンへドラッグ&ドロップする(10 秒)。FileSystem ドックから、開いているシーンのビューやノードツリーへドラッグします。公式ドキュメントによれば、この場合 ルートノードの名前はファイル名に合わせてリネームされます。
- 表示を確認する(1 分)。真っ暗に見える場合は、シーンにライトが無いか、環境(WorldEnvironment)が設定されていない可能性があります。
さらに細かく調整したいときは、Advanced Import Settings(詳細なインポート設定) のダイアログを開きます。FileSystem ドックで 3D シーンをダブルクリックするか、Import ドックの Advanced… ボタンから開けます(出典: Godot Docs - Import configuration、2026年7月時点)。個別のメッシュやマテリアルごとに設定を上書きしたい場合はここを使います。
覚えておくべき仕様:元ファイルには上書きできない
Godot で 3D データを扱うときに、最初に理解しておきたい仕様があります。公式ドキュメントはこう書いています。「Godot は自身のシーン形式(.tscn / .scn)しか保存できず、元の 3D シーンファイルに上書き保存することはできない」。
インポートされた GLB は、Godot 内部では PackedScene(メッシュ・マテリアル・スケルトン・アニメーションを含む、Godot ネイティブ形式のシーン)として扱われます。つまり、Godot 上で加えた変更は元の .glb には戻りません。
実務上の意味は 2 つです。
- 元データは常に「ソース」として別に管理する。 Blender のプロジェクトや、生成元の GLB を残しておきます。
- Godot 側の作り込みは、インポートしたシーンを継承した別シーンで行う。 こうしておくと、元データを差し替えて再インポートしても、作り込みが消えません。
AI で生成した 3D モデルは、生成し直せば別のバリエーションが得られます。「モデルを差し替える前提」で構造を組んでおくと、あとで手戻りが起きにくくなります。編集ルート全体の考え方はAIで作った3Dモデルを編集する方法総覧に整理してあります。
ゲームで使う:ノード名サフィックスで当たり判定を作る
Godot には、元データのノード名に付けた接尾辞(サフィックス)を見て、インポート時にノードの種類を変える という便利な仕組みがあります。サフィックスは -、$、_ のいずれかで区切ることができ、大文字小文字は区別されません(出典: Godot Docs - Node type customization、2026年7月時点)。
| サフィックス | インポート時の挙動 |
|---|---|
-col | 三角メッシュの静的な当たり判定を子ノードとして生成する |
-convcol | 三角メッシュではなく ConvexPolygonShape3D を生成する |
-colonly | メッシュを取り除き、StaticBody3D の当たり判定だけを残す |
-convcolonly | -colonly と同様だが凸分解を使う |
-rigid | メッシュを RigidBody3D として取り込む |
-navmesh | ナビゲーションメッシュに変換する |
-occ / -occonly | オクルーダー(Occluder3D)を生成/メッシュをオクルーダーに変換する |
-noimp | 型を問わず、インポート時にノードとアニメーションを取り除く |
-vcol | 頂点カラーのフラグを有効にする |
-alpha | 透過(TRANSPARENCY_ALPHA)モードを適用する |
-loop / -cycle | アニメーションのループフラグを設定する |
ここに落とし穴があります。サフィックスは「元データのノード名」に付いている必要があります。 AI で生成した 3D モデルのノード名は自動で決まるため、そのままでは当たり判定が付きません。方法は 2 つです。
- Blender で名前を変えてから書き出す(推奨)。GLB をいったん Blender で開き、オブジェクト名を
Character-colのように変えて再度 GLB として書き出します。以降は再インポートするだけで当たり判定が付いた状態になります。 - Godot 側で手動で追加する。配置したシーンに StaticBody3D と CollisionShape3D を自分で足します。1 体だけなら、こちらのほうが早い場合もあります。
三角メッシュの当たり判定は形に忠実ですが、処理は重くなります。動くキャラクターには簡易な形(カプセル・箱・凸形状)を使い、動かない背景オブジェクトにだけ三角メッシュを使う というのが、負荷の面で扱いやすい配分です。
取り込んだ後に確認する3点
1. スケール
配置した瞬間に極端に大きい・小さい、ということがあります。元データの寸法によるもので、エラーではありません。既存のオブジェクトや、想定しているキャラクターの身長と並べて相対的に合わせます。
2. マテリアルの見え方
glTF のマテリアルは物理ベース(PBR)で、金属らしさ(メタリック)と表面の粗さ(ラフネス)で質感が決まります。トゥーン調のゲームでは、この陰影が絵柄と噛み合わないことがあります。その場合は Godot 側でマテリアルを差し替えます。色と質感の仕組みはテクスチャとは?で解説しています。
3. 面の数
AI 生成モデルや作り込まれたモデルは、リアルタイム表示の基準では面が多いことがあります。同時に何体表示するかを基準に、必要なら書き出し前に減らします(ポリゴン数とは?)。Import ドックの Meshes セクションには LOD の設定もあるため、距離に応じた簡略化を任せる手もあります。
つまずきやすい点と対処
| 症状 | 考えられる原因 | 対処 |
|---|---|---|
| FileSystem ドックにファイルが出てこない | エディタがフォルダの変更を検知していない | エディタに一度フォーカスを戻す。プロジェクトを開き直す |
| 設定を変えたのに反映されない | Reimport を押していない | Import ドックで Reimport を実行する |
| 真っ暗で何も見えない | シーンにライトや環境が無い | ライト(DirectionalLight3D 等)や WorldEnvironment を追加する |
| すり抜ける・地面に乗らない | 当たり判定が生成されていない | 元データに -col を付けて書き出すか、手動で追加する |
| 動作が重い | 面の数・三角メッシュの当たり判定 | LOD を使う。当たり判定を簡易な形状に置き換える |
| 元ファイルを編集しても変化しない | 別のコピーを編集している | res:// 配下の実ファイルを差し替えて再インポートする |
| ポーズを変えられない | ボーンが入っていない | リギングという別工程が必要 |
最後の項目は、AI で生成した 3D モデルを使うときに必ず突き当たります。1 枚の絵から生成したモデルは骨の入っていない静止したメッシュなので、そのままでは歩かせたりポーズを変えたりできません。 展示・背景・小物・回転表示といった用途なら追加工程なしで使えますが、キャラクターとして動かしたい場合はリギングの工程が別途必要になる、と計画に織り込んでおいてください(リギングとは?)。
よくある質問
Godot で GLB を読み込むのにプラグインは必要ですか?
必要ありません。glTF 2.0 は Godot が標準で対応しており、公式ドキュメントでも推奨形式として挙げられています。.glb(バイナリ)と .gltf(テキスト)の両方に対応します。.gltf を使う場合は、付随する画像ファイルなども一緒に配置してください。.glb は 1 ファイルに収まっているため、その手間がありません。
インポートしたモデルに当たり判定を付けるには?
元データのノード名に -col(三角メッシュの当たり判定を子として生成)や -colonly(メッシュを消して当たり判定だけ残す)といったサフィックスを付けて書き出すと、インポート時に自動で作られます。名前を変えられない場合は、Godot 側で StaticBody3D と CollisionShape3D を手動で追加します。
Godot で編集した内容を元の GLB に戻せますか?
戻せません。Godot は自身のシーン形式(.tscn / .scn)しか保存できない仕様です。元データは別に保管し、Godot 側の作り込みは継承したシーンで行うのが安全な進め方です。形そのものを変えたい場合は、Blender など外部のソフトで編集してから再度書き出し、Godot に再インポートします。
AI で生成した 3D モデルを試すなら、Unity と Godot のどちらが手軽ですか?
「読み込むまでの手数」だけで言えば Godot です。glTF 2.0 がネイティブ対応なので、ファイルを置くだけで表示まで進めます。Unity は公式パッケージを 1 つ追加する手間が入りますが、追加後の扱いやすさは変わりません。すでにどちらかのエンジンでプロジェクトが動いているなら、そのエンジンに合わせるのが合理的です。どちらも無料で始められるので、まずは 1 体を実際に読み込んで、表示と負荷を自分の目で確かめるところからで十分です。
インポートしたモデルの一部だけを使いたいときは?
Advanced Import Settings のダイアログを開くと、メッシュやマテリアルを個別に確認しながら設定を上書きできます。不要なノードは、元データ側の名前に -noimp を付けて書き出すとインポート時に取り除かれます。配置後に不要なノードを削除する方法でも構いませんが、モデルを差し替えるたびに同じ作業が発生するため、繰り返すなら元データ側で処理しておくほうが手間が減ります。
まとめ
Godot への GLB 取り込みは、①プロジェクトフォルダに .glb を置く → ②Import ドックで設定を確認し Reimport → ③FileSystem ドックからシーンへドラッグ の 3 ステップで完了します。glTF 2.0 はネイティブ対応かつ推奨形式なので、追加のプラグインは要りません。
押さえておきたいのは 2 点です。ひとつは 元の 3D ファイルには上書き保存できない という仕様。元データはソースとして管理し、作り込みは継承シーンで行います。もうひとつは ノード名サフィックスによる自動生成 で、-col などを元データ側で付けておくと当たり判定の作成を自動化できます。この 2 点を最初に理解しておくと、モデルを差し替えながら開発を進めても構造が壊れません。




