Collection Parameters
Collection Parameter 表現式は、パラメータ コレクション アセットの参照に使用します。マテリアル、ブループリントなどの様々なアセットで簡単に再利用できるパラメータ グループです。Collection Parameters については、マテリアルのパラメータ コレクション を必ず参照してください。
マテリアルは最大で 2 つの異なる MaterialParameterCollection を参照することができます。通常はコレクションの 1 つをゲーム全体の値として使用し、 その他は、レベル固有のパラメータとして使用されます。コレクションは最大で 1024 のスカラーパラメータと、 1024 の ベクター パラメータを持つことができます。
DynamicParameter
DynamicParameter 表現式は、パーティクル エミッタが任意の方法で使用されるマテリアルに最大 4 つの値を渡すためのコンジットを提供します。これらの値は、エミッタに配置された ParameterDynamic モジュールを介して カスケード に設定されます。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Param Names | パラメータ名の配列です。この値は、マテリアル エディタの表現式の出力に表示されるテキストを決定し、カスケードの ParameterDynamic モジュールのパラメータを参照するために使用される名前になります。 |
| 出力 | |
| Param1 | Param Names プロパティの最初のパラメータの値を出力します。この出力の名前は Param Names プロパティに基づいて変更できます。 |
| Param2 | Param Names プロパティの 2 番目のパラメータの値を出力します。この出力の名前は Param Names プロパティに基づいて変更します。 |
| Param3 | Param Namesプロパティの 3 番目のパラメータの値を出力します。この出力の名前は Param Names プロパティに基づいて変更します。 |
| Param4 | Param Namesプロパティの 4 番目のパラメータの値を出力します。この出力の名前は Param Names プロパティに基づいて変更します。 |
FontSampleParameter
FontSampleParameter 表現式は、マテリアル インスタンス定数でフォントベースのパラメータをエクスポーズする手段を提供することにより、様々なインスタンスで様々なフォントを簡単に使用できます。フォントのアルファ チャンネルには、フォント アウトライン値が格納されます。有効なフォントページのみを指定できます。
| アイテム | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Font | 表現式で使用するデフォルトのフォントアセット (コンテンツブラウザ から) を保持します。 |
| Font Texture Page | テクスチャの一部として使用する現在のフォントのテクスチャページです。 |
ScalarParameter
ScalarParameter 表現式は、マテリアルのインスタンス内かコードによってオンザフライでアクセスおよび変更できる、単一の浮動小数点値 (Constant) を出力します。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Default Value | 定数が受け取る初期値を指定します。 |
StaticBoolParameter
StaticBoolParameter は、ブール値のパラメータのみを作成しスイッチは実装しないこと以外は、StaticSwitchParameter と同様に機能します。
このパラメータは、ランタイム時に変更できないため、「static (スタティック)」という名前が付けられます。また、マテリアル インスタンス エディタでのみ設定できます。スタティック スイッチは、ランタイム時ではなくコンパイル時に適用されます。つまり、マテリアルのブランチがドロップされても実行されないため、ランタイム時にスタティック スイッチが効率よく解放されます。一方で、マテリアルはスタティック パラメータを 使用して 作成するごとに、その新しいバージョンをコンパイルする必要があります。そのため、これを乱用するとシェーダが容量やメモリを占有してしまう可能性があります。従って、マテリアル内のスタティック パラメータの数と、実際に使用されるスタティック パラメータの順列の数を最小限に抑えるようにしてください。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Default Value | パラメータのデフォルトのブール値です。「True (チェック済み)」または「False」で指定します。 |
このノードは MaterialFunctions で使用します。
StaticSwitchParameter
StaticSwitchParameter 表現式は 2 つの入力を取り、パラメータの値が「true」の場合は最初の入力を、そうでない場合は 2 番目の入力を出力します。
このパラメータは、ランタイム時に変更できないため、「static (スタティック)」という名前が付けられます。また、マテリアル インスタンス エディタでのみ設定できます。スタティック スイッチは、ランタイム時ではなくコンパイル時に適用されます。つまり、マテリアルのブランチがドロップされても実行されないため、ランタイム時にスタティック スイッチが効率よく解放されます。一方で、マテリアルはスタティック パラメータを 使用して 作成するごとに、その新しいバージョンをコンパイルする必要があります。そのため、これを乱用するとシェーダが容量やメモリを占有してしまう可能性があります。従って、マテリアル内のスタティック パラメータの数と、実際に使用されるスタティック パラメータの順列の数を最小限に抑えるようにしてください。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Default Value | trueの場合、最初の入力が出力されます。それ以外の場合、2 番目の入力が出力されます。 |
| Extended Caption Display | true の場合、表現式のタイトルバーに表現式の値が表示されます。 |
| 入力 | |
| A | 任意の数のチャンネルの値を受け取ります。 |
| B | 任意の数のチャンネルの値を受け取ります。 |
使用例: スタティック スイッチを使用して、ランタイム コストなしでマテリアルのブランチ全体を削除できます。インスタンスは異なる値を持つことができ、パフォーマンスを損なうことなくテンプレート化されたシェーダを設定できます。
StaticComponentMaskParameter
StaticComponentMaskParameter 表現式は、インスタンスによってマスク値を設定できることを除いて、通常のコンポーネントマスクと同じように動作します。
このパラメータは、ランタイム時に変更できないため、「static (スタティック)」という名前が付けられます。また、マテリアル インスタンス エディタでのみ設定できます。スタティック スイッチは、ランタイム時ではなくコンパイル時に適用されます。つまり、マテリアルのブランチがドロップされても実行されないため、ランタイム時にスタティック スイッチが効率よく解放されます。一方で、マテリアルはスタティック パラメータを 使用して 作成するごとに、その新しいバージョンをコンパイルする必要があります。そのため、これを乱用するとシェーダが容量やメモリを占有してしまう可能性があります。従って、マテリアル内のスタティック パラメータの数と、実際に使用されるスタティック パラメータの順列の数を最小限に抑えるようにしてください。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Default R | チェックされている場合、入力値の赤または最初のチャンネルが出力に渡されます。 |
| Default G | チェックされている場合、入力値の緑または 2 番目のチャンネルが出力に渡されます。 |
| Default B | チェックされている場合、入力値の青または 3 番目のチャンネルが出力に渡されます。 |
| Default A | チェックされている場合、入力値のアルファまたは 4 番目のチャンネルが出力に渡されます。 |
使用例: スタティック コンポーネント マスクを使用すると、インスタンスが使用するマスク テクスチャのチャンネルを選択できます。マスクがスタティック (ランタイム時に変更が不必要) な場合、チャンネルをマスクするためにベクター パラメータでテクスチャ ルックアップを乗算する代わりに常にこの方法を使用します。
VectorParameter
VectorParameter 表現式は、パラメータであり、マテリアルのインスタンスであることとコードを介して変更できること以外は、Constant4Vector と同じです。VectorParameter の優れた点の 1 つは、カラー ピッカーを使用して値を設定できることです。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Default Value
[REGION:prop_sublist]
R G B A [/REGION] |
MaterialInstanceConstant でオーバーライドされる場合を除き、デフォルトで出力されるベクター。
[REGION:prop_sublist]
表現式が出力するベクターの赤または 1 番目のチャンネルの浮動小数点値を指定します。 表現式が出力するベクターの緑または 2 番目の浮動小数点値を指定します。 表現式が出力するベクターの青または 3 番目の浮動小数点値を指定します。 表現式が出力するベクターのアルファまたは 4 番目の浮動小数点値を指定します。 [/REGION] |
VertexColor は、補間が制限されているため、Transform ノードと相互に排他的な関係となっています。Transform ノードと VertexColor を両方使用すると、 VertexColor は全て白になります。
プログラマー向け: スプライト パーティクルの場合、色は頂点ごとにシェーダに伝えられますが、メッシュ パーティクルの色はシェーダ定数として設定されます。
TextureObjectParameter
TextureObjectParameter 表現式は、テクスチャ パラメータを定義します。そしてテクスチャ入力と関数を呼び出すマテリアルに用いるテクスチャ オブジェクトを出力します。このノードはテクスチャを実際にサンプリングしないので、TextureSample ノードを組み合わせて使用する必要があります。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Texture | 表現式によってサンプル化されたテクスチャを指定します。 |
| Sampler Type | ノードからサンプリングおよび出力されるデータ タイプです。 |
| MipValueMode | サンプルのミップレベルもしくはデフォルト ハードウェアで計算された微分係数をカスタマイズする方法を選択します。外観とパフォーマンスの調整に影響します。 |
このノードは MaterialFunctions で使用します。
TextureSampleParameter2D
TextureSampleParameter2D 表現式はマテリアルのインスタンスおよびコードを介して変更できるパラメータであること以外は、TextureSample と同じです。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Texture | 表現式によってサンプリングされたテクスチャを指定します。 |
| Sampler Type | ノードからサンプリングおよび出力されるデータ タイプです。 |
| MipValueMode | サンプルのミップレベルもしくはデフォルト ハードウェアで計算された導関数をカスタマイズする方法を選択します。外観とパフォーマンスの調整に影響します。 |
| 入力 | |
| UVs | テキスチャに使用する UV テクスチャ座標を受け取ります。UV に値が入力されなかった場合、マテリアルが適用されているメッシュのテクスチャ座標が使用されます。 |
| 出力 | |
| RGB | 色の 3 つのチャンネルである RGB ベクターの値を出力します。 |
| R | 色の赤チャンネルを出力します。 |
| G | 色の緑チャンネルを出力します。 |
| B | 色の青チャンネルを出力します。 |
| A | 色のアルファチャンネルを出力します。テクスチャにアルファ チャンネルが含まれていない場合でも、「アルファ」チャンネルへ何かを接続すると、表向きは不正行為ではないものの常に結果はゼロ (黒) となります。 |
TextureSampleParameterSubUV
TextureSampleParameterSubUV は、マテリアルのインスタンスやコードを通じて修正できるパラメータである点を除いて ParticleSubUV と同一です。
| アイテム | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Blend | 次から次へとフレームを即時に「ポッピング」するのではなく、 SubUV スプライト レイアウトの各フレームを一緒にブレンドします。 |
| Texture | 表現式によってサンプル化されたテクスチャを指定します。 |
| Sampler Type | ノードからサンプルおよび出力されるデータ タイプです。 |
| MipValueMode | サンプルのミップレベルもしくはデフォルト ハードウェアで計算された微分係数をカスタマイズする方法を選択します。外観とパフォーマンスの調整に影響します。 |
| 入力 | |
| UVs | UV 入力値は無視され何も起こりません。 |
| 出力値 | |
| RGB | その色の 3 つのチャンネルである RGB ベクターの値を出力します。 |
| R | その色の赤チャンネルを出力します。 |
| G | その色の緑チャンネルを出力します。 |
| B | その色の青チャンネルを出力します。 |
| A | その色のアルファチャンネルを出力します。テクスチャにアルファ チャンネルが含まれていない場合、「アルファ」チャンネルへ何かを接続すると、表向きは不正行為ではないものの常に結果はゼロ (黒) となります。 |
TextureSampleParameterCube
TextureSampleParameterCube 表現式は、キューブマップのみを受け取る点と、マテリアルのインスタンスおよびコードを介して変更できるパラメータである点を除いて、TextureSample と同じです。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Texture | 表現式によってサンプリングされたテクスチャを指定します。 |
| Sampler Type | ノードからサンプリングおよび出力されるデータ タイプです。 |
| MipValueMode | サンプルのミップレベルもしくはデフォルト ハードウェアで計算された導関数をカスタマイズする方法を選択します。外観とパフォーマンスの調整に影響します。 |
| 入力 | |
| UVs | テキスチャに使用する UV テクスチャ座標を受け取ります。UV に値が入力されていない場合、マテリアルが適用されているメッシュのテクスチャ座標が使用されます。3 チャンネルのベクター値でなくてはいけません。 |
| 出力 | |
| RGB | 色の 3 つのチャンネルである RGB ベクターの値を出力します。 |
| R | 色の赤チャンネルを出力します。 |
| G | 色の緑チャンネルを出力します。 |
| B | 色の青チャンネルを出力します。 |
| A | 色のアルファチャンネルを出力します。テクスチャにアルファ チャンネルが含まれていない場合でも、「アルファ」チャンネルへ何かを接続すると、表向きは不正行為ではないものの常に結果はゼロ (黒) となります。 |
TextureSampleParameterMovie
TextureSampleParameterMovie 表現式は、ムービー テクスチャ (Bink ムービー) のみを受け取る点と、マテリアルのインスタンスおよびコードを介して変更できるパラメータがある点を除き、TextureSample と同じです。
| 項目 | 説明 |
|---|---|
| プロパティ | |
| Parameter Name | マテリアルのインスタンスおよびコードを通じてパラメータの識別に使用する名前を指定します。 |
| Group | MaterialInstanceConstant 内でパラメータ名をグループまたはカテゴリに整理できます。同じグループ プロパティ名を持つマテリアル内のすべてのパラメータは、インスタンスのそのカテゴリの下にリストされます。 |
| Texture | 表現式によってサンプリングされたテクスチャを指定します。 |
| Sampler Type | ノードからサンプリングおよび出力されるデータ タイプです。 |
| MipValueMode | サンプルのミップレベルもしくはデフォルト ハードウェアで計算された導関数をカスタマイズする方法を選択します。外観とパフォーマンスの調整に影響します。 |
| 入力 | |
| UVs | テキスチャに使用する UV テクスチャ座標を受け取ります。UV に値が入力されなかった場合、マテリアルが適用されているメッシュのテクスチャ座標が使用されます。 |
| 出力 | |
| RGB | 色の 3 つのチャンネルである RGB ベクターの値を出力します。 |
| R | 色の赤チャンネルを出力します。 |
| G | 色の緑チャンネルを出力します。 |
| B | 色の青チャンネルを出力します。 |
| A | 色のアルファチャンネルを出力します。テクスチャにアルファ チャンネルが含まれていない場合でも、「アルファ」チャンネルへ何かを接続すると、表向きは不正行為ではないものの常に結果はゼロ (黒) となります。 |