シェーダーマテリアル

はじめに

最も一般的なケースでは、Godotは、:ref:SpatialMaterial <class_SpatialMaterial>:、CanvasItemMaterial:、および ParticlesMaterial など、ほとんどのタイプのシェーダーにすぐに使用できるマテリアルを提供します。それらはほとんどのユースケースをカバーする柔軟な実装です。

シェーダーマテリアルを使用すると、カスタムシェーダーを直接作成して、最大限の柔軟性を得ることができます。この例は次のとおりです:

  • 手続き型テクスチャの作成。
  • 複雑なテクスチャブレンド効果の作成。
  • アニメーション化されたマテリアル、または時間とともに変化するマテリアルの作成。
  • 屈折効果またはその他の高度な効果の作成。
  • よりエキゾチックな素材のための特別な照明シェーダーの作成。
  • 木の葉や草のような頂点のアニメーション化。
  • カスタムパーティクルコードの作成。
  • さらに多くも!

Godotには、頻繁な操作を簡単にするための機能が組み込まれています。さらに、Godotのシェーダーエディタは入力時にエラーを検出するため、編集したシェーダーをリアルタイムで確認できます。視覚的なノードベースのグラフエディタを使用してシェーダーを編集することもできます。

ShaderMaterialの作成

選択したオブジェクトに新しいShaderMaterialを作成します。[Material] プロパティに移動し、ShaderMaterialを作成します。

../../_images/shader_material_create.png

次に、シェーダーマテリアルをクリックして、そのプロパティを確認します。ここから、シェーダーまたはビジュアルシェーダーを作成できます。通常のシェーダーはコードを使用してプロパティを設定し、ビジュアルシェーダーはノードベースのワークフローを使用します。

必要に応じて、ビジュアルシェーダーをテキストシェーダーに変換できます。ただし、テキストシェーダーをビジュアルシェーダーに変換することはできません。

いずれかを選択すると、シェーダーの編集を開始できます。

../../_images/shader_create.png

通常のシェーダーを作成する場合は、クリックしてシェーダーエディタを開きます。

../../_images/shader_material_editor.png

ビジュアルシェーダーを作成すると、ビジュアルシェーダーエディタが自動的に開きます。

../../_images/visual_shader_editor.png

ビジュアルシェーダーエディタでボタンをクリックすると、ビジュアルシェーダーがシェーダーコードとしてどのように見えるかを確認できます。これは、テキストシェーダーをノードとして複製しようとしている場合、またはビジュアルシェーダーをテキストシェーダーに変換するためのプレビューとして使用できる場合に役立ちます。

../../_images/visual_shader_code.png

注釈

ビジュアルシェーダーの詳細については、ビジュアルシェーダー を参照してください。

ShaderMaterialへの変換

SpatialMaterial、CanvasItemMaterial、およびParticlesMaterialからShaderMaterialに変換できます。これを行うには、マテリアルのプロパティに移動し、変換オプションを選択します。

../../_images/shader_material_convert.png

注釈

変換オプションを使用すると、SpatialMaterialが、視覚的なシェーダーではなく、テキストシェーダーを持つShaderMaterialに変わります。