アトリビュート エディタ(Attribute Editor)に ShaderFX ノードをエクスポーズする

ShaderFX ノードをアトリビュートとしてエクスポーズする

ShaderFX エディタでノードを作成する場合は、アトリビュート エディタ(Attribute Editor)にアトリビュートとしてエクスポーズすることができます。この方法では、ShaderFX エディタを開かずにその値を微調整することができます。

ShaderFX エディタが開いている状態で、ノードを選択し、ShaderfxShader アトリビュート エディタ(Attribute Editor)から Expose as Material Input をクリックします。

注: アトリビュート エディタ(Attribute Editor)Expose as Material Input を無効にしている場合、アトリビュート エディタ(Attribute Editor)で設定したすべての値が元の値に戻されます。

ShaderFX エディタを閉じると、アトリビュートはアトリビュート エディタ(Attribute Editor) (ShaderfxShader タブ)の Attributes セクションで使用できます。このアトリビュートを調整すると、シーン内でリアル タイムに更新を確認することができます。

注: ノードのスウォッチのレンダリング(Render Swatch)アイコン をクリックした場合、プレビュー スウォッチでのカラーはアトリビュート エディタ(Attribute Editor)でのカラーと同期されていないことがあります。

アトリビュート エディタ(Attribute Editor)で ShaderFX アトリビュートをグループ化する

既定では、Expose As Material Input が有効になっているすべてのノードはアトリビュート エディタ(Attribute Editor)でエクスポーズされ、Attributes 下にグループ化されます。体系的にするために各ノードにグループ名を指定することができ、各ノードはアトリビュート エディタ(Attribute Editor)で独自のグループの下に一覧表示されます。

この例では、グループ名 MyGroupColor が Color に追加され、MyGroupVal が Float に追加されています。各ノードの Expose as Material Input アトリビュートは有効になっています。

ShaderFX エディタを閉じると、Color はカテゴリ MyGroupColor にエクスポーズされ、Val はカテゴリ MyGroupVal にエクスポーズされます。

ShaderFX ノードを設定として追加する

Advanced Mode では、いくつかのノードに Expose as Setting というオプションもあります。

このオプションを有効にすると、パラメータは、アトリビュート エディタ(Attribute Editor)Settings セクションで使用できます。

SettingsAttributes とは異なり、設定の新しい値に基づいてシェーダの再生成をトリガしますが、アトリビュートでは既存のシェーダ内の値の更新のみを行います。

多くの場合で設定は、特定の条件に基づいてグラフ内で取るパスを決定するために、Path Direction または Skip と共に使用されます。たとえば、テッセレーションまたは不透明度の使用を有効化または無効化する場合です。

この例では、Bool Value ノードが作成されて、その目的を適切に反映するように名前が UseTexture に変更されます。Expose as Setting アトリビュートが有効になり、ShaderFX エディタを閉じるときに、アトリビュート エディタ(Attribute Editor)Settings セクションで値を true または false に設定できるようになります。UseTexture を true に設定すると、TextureMap で拡散カラーを提供します。false に設定すると、Color で拡散カラーを提供します。