Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

名前にサフィックスを使用したノードタイプのカスタマイズ

多くの場合、シーンを編集する場合、エクスポート後に実行する必要がある一般的なタスクがあります:

  • オブジェクトへのコリジョン検出の追加。

  • オブジェクトをナビゲーションメッシュとして設定する。

  • ゲームエンジンで使用されていないノードの削除 (モデリングに使用される特定のライトなど)。

このワークフローを簡略化するために、Godotには3Dモデリングソフトウェアのオブジェクトの名前に追加できるサフィックスがいくつかあります。インポートすると、Godotはオブジェクトの名前のサフィックスを検出し、自動的にアクションを実行します。

警告

以下に説明するすべてのサフィックスは、 -$_ とともに使用でき、大文字と小文字は区別されません

Opting out

If you do not want Godot to perform any of the actions described below, you can set the nodes/use_node_type_suffixes import option to false. This will disable all node type suffixes, which keeps nodes the same type as the original file indicated. However, the -noimp suffix will still be respected, as well as non-node suffixes like -vcol or -loop.

Alternatively, you can completely opt out of all name suffixes by setting the nodes/use_name_suffixes import option to false. This will completely stop the general scene import code from looking at name suffixes. However, the format-specific import code may still look at name suffixes, such as the glTF importer checking for the -loop suffix.

Disabling these options makes editor-imported files more similar to the original files, and more similar to importing files at runtime. For an import workflow that works at runtime, gives more predictable results, and only has explicitly defined behavior, consider setting these options to false and using GLTFDocumentExtension instead.

Remove nodes and animations (-noimp)

Nodes and animations that have the -noimp suffix will be removed at import time no matter what their type is. They will not appear in the imported scene.

これは [詳細インポート設定] ダイアログでノードに対して インポートをスキップ を有効にするのと同じです。

コリジョンの作成 (-col, -convcol, -colonly, -convcolonly)

オプション -col はメッシュオブジェクトに対してのみ機能します。検出された場合、メッシュと同じジオメトリを使用して、子の静的衝突ノードが追加されます。これにより三角形メッシュのコリジョンシェイプが作成されます。これは衝突検出のための低速ですが正確なオプションです。このオプションは通常、地形ジオメトリに必要なものです (ただし、以下の -colonly も参照してください)。

オプション -convcol は、ConcavePolygonShape3D ではなく ConvexPolygonShape3D を作成します。凹型にできる三角形メッシュとは異なり、凸型は凹角のない形状のみを正確に表現できます (ピラミッドは凸型ですが、中空のボックスは凹型です)。このため、凸型コリジョンシェイプは一般に地形ジオメトリには適していません。十分に単純なメッシュを表現する場合、凸型コリジョンシェイプは三角形コリジョンシェイプと比較してパフォーマンスが向上する可能性があります。このオプションは、ほぼ正確な衝突検出を必要とする単純なオブジェクトまたは動的オブジェクトに最適です。

ただし、どちらの場合も視覚的なジオメトリが複雑すぎるか、衝突に対して十分にスムーズでない可能性があります。これにより、物理的な不具合が発生し、エンジンが不必要に遅くなる可能性があります。

これを解決するには、 -colonly 修飾子を使用します。これによりインポート時にメッシュが削除され、代わりに StaticBody3D コリジョンが作成されます。これにより、視覚的なメッシュと実際の衝突を分離できます。

オプション -convcolonly も同様に動作しますが、凸型分解を使用する代わりに ConvexPolygonShape3D を作成します。

オプション -colonly は、Blenderの空のオブジェクトでも使用できます。インポート時にコリジョンノードを子として持つ StaticBody3D が作成されます。コリジョンノードには、Blenderの空の描画タイプに応じて、事前定義されたいくつかの形状があります:

Blender で Empty を作成するときに描画タイプを選択する

Blender で Empty を作成するときに描画タイプを選択する

可能であれば、三角形メッシュや凸型シェイプの代わりに、いくつかのプリミティブ衝突シェイプを使用するようにしてください。プリミティブシェイプは、多くの場合、最高のパフォーマンスと信頼性が得られます。

注釈

Blenderのエディタで見やすくするために、ユーザーはコリジョン用エンプティに「X-Ray」オプションを設定し、編集 > プリファレンス > テーマ > 3Dビューポート > エンプティ を変更して、それらに明確な色を設定できます。

Blender 2.79 以前を使用している場合は、代わりに次の手順に従ってください: ユーザープリファレンス > テーマ > 3Dビュー > エンプティ

参考

コリジョンシェイプの包括的な概要については、コリジョン形状(3D) を参照してください。

オクルーダの作成 (-occ, -occonly)

メッシュが -occ サフィックス付きでインポートされると、メッシュのジオメトリに基づいて Occluder3D ノードが作成されますが、メッシュは置き換えられません。 -occonly サフィックス付きのメッシュノードは、インポート時に Occluder3D に変換されます。

ナビゲーションの作成(-navmesh)

-navmesh サフィックスを持つメッシュノードはナビゲーションメッシュに変換されます。元のメッシュオブジェクトはインポート時に削除されます。

VehicleBodyの作成 (-vehicle)

-vehicle サフィックスを持つメッシュノードは、 VehicleBody3D ノードの子としてインポートされます。

VehicleWheelの作成 (-wheel)

-wheel サフィックスを持つメッシュノードは、 VehicleWheel3D ノードの子としてインポートされます。

リジッドボディ(-rigid)

-rigid サフィックスを持つメッシュ ノードは、 RigidBody3D としてインポートされます。

アニメーションループ(-loop、-cycle)

loop または cycle トークンで開始または終了するCOLLADAドキュメント内のアニメーションクリップは、ループフラグが設定された Godot Animation としてインポートされます。 上記の他のサフィックスとは異なり、ハイフンは必要ありません。

Blenderでは、NLAエディタを使用し、アクションの名前に loop または cycle のプレフィックスもしくはサフィックスを付ける必要があります。

Material alpha (-alpha)

A material with the -alpha suffix will be imported with the TRANSPARENCY_ALPHA transparency mode.

Material vertex color (-vcol)

A material with the -vcol suffix will be imported with the FLAG_ALBEDO_FROM_VERTEX_COLOR and FLAG_SRGB_VERTEX_COLOR flags set.