パラメータの昇格

このチュートリアルでは、シェーダーグラフ内のコンスタントノードをパラメータに昇格する手順を説明します。昇格したコンスタントは生成されたシェーダーのユニフォームになり、Material Type のプロパティとして公開されます。このプロパティは Kanzi Studio の Properties パネルから編集でき、その効果をランタイムで確認できます。

前提条件

始める前に、Shader Graph Editor を有効にします。シェーダーグラフエディタを有効にする を参照してください。

ベースグラフを作成する

このセクションでは、単一の Color4 コンスタントから Material Output の Color インプットを駆動する、最小限の Fullscreen グラフを作成します。

  1. Library で、Alt を押しながら右クリック Materials and Textures > Shader Graphs を選択し、Shader Graph を選択します。Kanzi Studio は、マテリアルタイプが Fullscreen のシェーダーグラフを作成し、キャンバスに Material Output ノードを配置します。

  2. キャンバスを右クリックし、Color4 を選択します。ノードのスウォッチをクリックして色を選択します。

  3. Color4 ノードの result 出力ポートから Material Output ノードの Color 入力ポートへドラッグします。

  4. Generate Shader をクリックします。シェーダーのコンパイルが成功すると、Kanzi Studio は Library に Material Type を作成します。

コンスタントをパラメータに昇格する

任意のコンスタントノード(Scalar、Int、Vec2、Vec3、Vec4、Color3、Color4)をパラメータに昇格できます。

このセクションでは、Color4 ノードを昇格し、その値をノードからではなく Properties パネルから編集できるようにします。

  1. Color4 ノードを右クリックします。

  2. Promote to Parameter を選択します。ノードが更新され、コンスタントがパラメータになったことが示されます。

    ../../_images/promote-context-menu.png
  3. Generate Shader をクリックしてシェーダーを再生成します。昇格したコンスタントは Material Type のユニフォームになり、その Material Type を使用するすべての Material にプロパティとして表示されます。

    Generate Shader の横にある Auto スイッチが有効になっている場合は、エディタがシェーダーを自動的に再生成します。

Properties パネルからパラメータを編集する

昇格したパラメータの値を変更し、その効果をランタイムで確認するには、次の手順を実行します。

  1. Kanzi Studio の Library で、グラフが生成した Material を選択します。

  2. Properties パネルで、昇格したパラメータに対応するプロパティを見つけ、その値を変更します。

    ../../_images/runtime-parameter-changes.gif
  3. Material が使用されている箇所で変更を確認します。パラメータはユニフォームになっているため、Kanzi Studio はシェーダーを再生成せずに新しい値を適用します。

パラメータの昇格を解除する

パラメーターをコンスタントに戻すには、昇格させたノードを右クリックし、Unpromote from Parameter を選択します。昇格中にノードが保持していた値が新しいコンスタント値になり、シェーダーを再生成すると、対応するプロパティが Material Type から削除されます。

関連項目

シェーダーグラフ (エクスペリメンタル)

シェーダーグラフを作成する

PBR マテリアルの作成

マテリアルを使用する (Using materials)