マテリアル

既存のGodotマテリアルを使用する

エクスポーターがマテリアルを処理する方法の1つは、Blenderマテリアルを既存のGodotマテリアルと一致させることです。これには、Godotのマテリアルシステムのすべての機能を使用できるという利点がありますが、Blender内でマテリアルが適用されたモデルを見ることができないことを意味します。

この動作のために、エクスポーターはBlenderのマテリアル名と一致する名前のGodotマテリアルを見つけようとします。したがって、Blenderでマテリアル名が PurpleDots のオブジェクトをエクスポートすると、エクスポーターはファイル PurpleDots.tres を検索し、オブジェクトに割り当てます。このファイルが SpatialMaterial または ShaderMaterial でない場合、またはファイル自体が見つからない場合、エクスポーターはBlenderからマテリアルをエクスポートするようにフォールバックします。

エクスポーターが .tres ファイルを検索する場所は、「Material Search Paths」オプションによって決定されます:

../../../_images/material_search.jpg
これには、次の値を使用できます:
  • Project Directory(プロジェクトディレクトリ) - project.Godot の検索を試み、サブディレクトリを再帰的に検索します。 project.Godot が見つからない場合、エラーがスローされます。これは、名前の競合が起こりそうにないほとんどのプロジェクトに役立ちます。

  • Export Directory(エクスポートディレクトリ) - エクスポート先のサブディレクトリにあるマテリアルを検索します。これは、重複するマテリアル名があり、割り当てられるマテリアルをより詳細に制御する必要があるプロジェクトに役立ちます。

  • None(なし) - マテリアルを検索しません。それらをBlenderファイルからエクスポートします。

Cycles/EEVEEマテリアルのエクスポート

エクスポーターには、Cycles/EEVEEマテリアルノードツリーをGodotシェーダーマテリアルに変換するためのプリミティブサポートがあります。一部のシェーダーノードは、実装が困難なため、まだサポートされていないことに注意してください。

  • すべての ノイズテクスチャ

  • 生成されたテクスチャ座標系

  • グループノード

  • PrincipledBSDFDiffuseGlossyGlassadd shader および mix shader を除くシェーダーノード

警告

可能であれば、出力シェーダーノードとしてGGXディストリビューションでPrincipledBSDFノードを使用してみてください。正確で正しいことが保証されている唯一のノードです。その他は近似に基づいています。

マテリアルがエクスポートに有効でない場合(サポートされていないノードがあるなど)、またはBlender Internal Engineを使用している場合、拡散色(diffuse )といくつかのフラグ(シェーディングなしなど)のみがエクスポートされ、Spatialマテリアルを形成します。

外部マテリアルの生成

マテリアルのエクスポートのデフォルト設定は、すべてのマテリアルを escn ファイルの内部に保持します。オプションとして、 Godotで escn ファイルを開くときに使われる、外部 ``.material``ファイルの生成を指示することができます。

../../../_images/external_mat_option.jpg

.material ファイルは、外部リソースとして任意のマテリアル スロットに割り当てることができます。

../../../_images/gd_dot_material.jpg