%Description%
Constant
Constant 表現式では単一の浮動小数値を出力します。最も頻繁に使用される式の一つであり、入力で想定されるチャンネルの数にかかわらず、あらゆる入力につなげることができます。たとえば、Constant を 3 つのベクターを想定する入力につなげた場合、その定数値は 3 つの要素すべてで使用されます。数値が 1 つだけ提供された場合は、説明フィールドにある小さな三角形のアイコンを使ってノードを折りたたむと便利です。
アイテム | 説明 |
---|---|
プロパティ | |
R | この表現式で出力する浮動小数値を特定します。 |
例: 0.7, -0.24, 1.1

マテリアル エディタのグラフ領域で 1 キーを押しながら マウスを左クリック すると、Constant ノードをすぐに作成できます。
Constant2Vector
Constant2Vector 表現式では 2 チャンネルのベクター値、つまり 2 つの定数を出力します。
アイテム | 説明 |
---|---|
プロパティ | |
R | 表現式が出力するベクターの赤の (最初の) チャンネルの浮動小数値を指定します。 |
G | 表現式が出力するベクターの緑の (2 番目の) チャンネルの浮動小数値を指定します。 |
例: (0.4, 0.6), (1.05, -0.3)
使用例: Constant2Vector も 2 チャンネルの値であるため、テクスチャ座標の修正に役立ちます。

マテリアル エディタのグラフ領域で 2 キーを押しながら マウスを左クリック すると、Constant2Vector ノードをすぐに作成できます。
Constant3Vector
Constant3Vector 表現式では 3 チャンネルのベクター値、つまり 3 つの定数を出力します。RGB カラーは、各チャンネルがそれぞれの色 (赤、緑、青) に割り当てられた Constant3Vector と考えることができます。
アイテム | 説明 |
---|---|
プロパティ | |
R | 表現式が出力するベクターの赤の (最初の) チャンネルの浮動小数値を指定します。 |
G | 表現式が出力するベクターの緑の (2 番目の) チャンネルの浮動小数値を指定します。 |
B | 表現式が出力するベクターの青の (3 番目の) チャンネルの浮動小数値を指定します。 |
例: (0.4, 0.6, 0.0), (1.05, -0.3, 0.3)

マテリアル エディタのグラフ領域で 3 キーを押しながら マウスを左クリック すると、Constant3Vector ノードをすぐに作成できます。
Constant4Vector
Constant4Vector 表現式では 4 チャンネルのベクター値、つまり 4 つの定数を出力します。RGBA カラーは、各チャンネルがそれぞれの色 (赤、緑、青、アルファ) に割り当てられた Constant4Vector と考えることができます。
アイテム | 説明 |
---|---|
プロパティ | |
R | 表現式が出力するベクターの赤の (最初の) チャンネルの浮動小数値を指定します。 |
G | 表現式が出力するベクターの緑の (2 番目の) チャンネルの浮動小数値を指定します。 |
B | 表現式が出力するベクターの青の (3 番目の) チャンネルの浮動小数値を指定します。 |
A | 表現式が出力するベクターのアルファ (4 番目の) チャンネルの浮動小数値を指定します。 |
例: (0.4, 0.6, 0.0, 1.0), (1.05, -0.3, 0.3, 0.5)

マテリアル エディタのグラフ領域で 4 キーを押しながら マウスを左クリック すると、Constant4Vector ノードをすぐに作成できます。
Distance Cull Fade
DistanceCullFade 表現式では、黒から白へとフェードするスカラー値を出力し、オブジェクトがカリング距離内に入った際にそのオブジェクトをフェードインさせることができます。ただし、オブジェクトをフェードアウトさせることはできないことに留意してください。

このネットワークでは、カメラがカリング距離内に入った際に、オブジェクトを (ポッピングではなく) フェードインします。
ParticleColor
ParticleColor 表現式は、Cascade 内で定義されたパーティクルごとのカラーデータをもとに任意のパーティクルの現在のカラーに結合します。関数は適切なチャンネル (エミッシブカラー) に接続しなくてはいけません。
アイテム | 説明 |
---|---|
出力値 | |
RGB | 結合した RGB ベクター データを出力します。 |
R | 赤チャンネル データを出力します。 |
G | 緑チャンネル データを出力します。 |
B | 青チャンネル データを出力します。 |
A | アルファ チャンネル データを出力します。 |

この例では、パーティクル システム内でパーティクルが定義されると表示する色を供給する ParticleColor 表現式を紹介しています。
ParticleDirection
ParticleDirection 表現式はパーティクルごとに 3vector (RGB) データを出力します。これは任意のパーティクルが現在移動している方向を表します。

この画像で、それぞれのパーティクルが現在の移動方向に基づいてパーティクルの色を変化させているのがわかります。
ParticleMotionBlurFade
ParticleMotionBlurFade 式は、モーションブラーの結果としてパーティクル上でフェードする量を値で出力します。1 の値はブラーが無いことを表し、黒は完全なブラーを表します。

ParticleRadius
ParticleRadius 表現式は、各パーティクルの半径をアンリアル単位で個別に出力します。例えば、半径がある特定のポイントに到達すると、マテリアルに変化をもたらすことができます。

この画像は、半径が 7 単位を超えるとパーティクルが緑から赤へ変化する模様を表しています。
ParticleRelativeTime
ParticleRelativeTime 表現式は、パーティクルの寿命を表す 0 か 1の値を出力します。 0 はパーティクルの誕生を表し、 1 はパーティクルの消滅を表します。

この例では、パーティクルの相対時間がエミッシブカラーへ送られているのが分かります。結果として誕生時に色が黒から薄れていくパーティクルが、消滅に近づくにつれて白へ変化しています。
ParticleSize
Particle Size 表現式は、パーティクル スプライトの X と Y のサイズを出力します。これは、マテリアルの一部の操作に使用できます。

画像をクリックしてフルサイズで表示
上のサンプルでは、パーティクル サイズはパーティクル カラーへ乗算されます。出力をマスクしているので、 Y 軸あるいはパーティクルの長さに対応する緑チャネルのみ利用できることにご注意ください。つまり、パーティクルが伸びるにつれて、色が明るくなるということです。パーティクルが縮むと色は暗くなります。
ParticleSpeed
ParticleSpeed は、各パーティクルの現在の移動速度をアンリアル単位 / 秒で測定して出力します。

この例は、パーティクルの速度はパーティクルの色を送り込んでいます。その後より意味のある結果とするため 10 で除算を行っています。減速するとパーティクルは黒に変化します。
PerInstanceFadeAmount
PerInstanceFadeAmount 表現式では、フォリッジなどのインスタンス化されたスタティック メッシュに適用されているフェードの量に関連する浮動小数値を出力します。これは定数ですが、メッシュのインスタンスごとに異なる数値となる場合もあります。
これは、InstancedStaticMesh アクタ、または InstancedStaticMeshComponent を使用する他のアクタに適用されている場合のみに機能します。
PerInstanceRandom
PerInstanceRandom 表現式では、マテリアルが適用される先のスタティック メッシュのインスタンスごとに、異なるランダム浮動小数値を出力します。InstancedStaticMeshComponent ではインスタンスのランダム浮動小数値を設定します。これは公開されるため、窓から見えるランダムなライト レベルなど、目的に応じて使用することができます。これは定数ですが、メッシュの各インスタンスで異なる値となります。
この出力値は、0 からターゲット プラットフォーム用の RAND_MAX 値の間の整数となります。
これは、InstancedStaticMesh アクタ、または InstancedStaticMeshComponent を使用する他のアクタに適用されている場合のみに機能します。
Time
Time ノードは、Panner や Cosine、その他の時間に依存する処理など、時間の推移をマテリアルに加える際に使用されます。
アイテム | 説明 |
---|---|
プロパティ | |
Ignore Pause | true の場合は、ゲームが一時停止されている場合でも時間が継続して一致します。 |
Period | true の場合は、これが時間をラップする量となります。これにより、Mobile マテリアルでは CPU 上で完全精度の Period 演算が実行されますが、GPU 上では半精度で実行されます。Period が 1 分を越える場合は問題が生じることがあります。 |

上の図で示されているネットワークでは、白と黒との間の正弦波的な遷移を常に表しながら、時間の経過に伴って変化するマテリアルが作成されます。Period を有効にした場合は、Period を 0 に設定すると実質的に遷移が停止され、1 に設定すると Period を false に設定した場合と同じになります。値を 0 に近づけるほど、マテリアルがより速いペースで変化します。
TwoSidedSign
TwoSidedSign 表現式は、両面のカスタム ライティング マテリアルの背面にある法線を反転して、フォンの機能と一致させる際に便利です。+1 は両面マテリアルの前面を、-1 は背面を反転します。

VertexColor
VertexColor 表現式は、スプライト パーティクル エミッタに影響を及ぼすカラー モジュールの出力への、マテリアルのアクセス ポイントとなるものです。
アイテム | 説明 |
---|---|
出力 | |
RGB | 色の 3 つのチャンネルである RGB ベクターの値を出力します。 |
R | 色の赤チャンネルを出力します。 |
G | 色の緑チャンネルを出力します。 |
B | 色の青チャンネルを出力します。 |
A | 色のアルファ チャンネルを出力します。 |

上記のネットワークでは、色とアルファのデータをパーティクル システムから直接使用します。火花などの特別なエフェクトにはこのようなネットワークが理想的です。
View Property
ViewProperty 表現式では、視野角やレンダリング ターゲットサイズなど、ビューに依存する定数プロパティを出力します。アクセスするビュー プロパティは設定することができ、出力のタイプは設定してアクセスしたプロパティに基づきます。

次は、視野角が 50 度の例です。
次は、同じ例の視野角を 90 度にしたものです。
Precomputed AO Mask
PrecomputedAOMask ノードでは、マテリアル内でライトマスが計算されたアンビエント オクルージョン (AO) にアクセスすることができます。 プロシージャルなテクスチャ化や、時間の経過とともに徐々に古くなる領域に劣化エフェクトや汚れを追加する場合に便利です。
Precomputed AO Mask の結果を確認するには、ライトマスを使って、対象のレベルのライティングを事前にビルドしておく必要があります。

上記のスクリーンショットでは、自動的に汚れのレイヤーをブレンドするための AO マスクが背景の隅に使われています。 AO マスクを使用するには、[World Settings (ワールドセッティング)] ->[Lightmass settings (ライトマス設定)] で [Use Ambient Occlusion (AO を使用)] と [Generate Ambient Occlusion Material Mask (AO マテリアル マスクを生成)] の両方を有効にしてからライティングをビルドする必要があります。 [Max Occlusion Distance (最大オクルージョン距離)] などの他の AO 制御設定は、AO の外観の微調整に役立ちます。 また、[Direct Illumination Occlusion Fraction (ダイレクト イルミネーション オクルージョンの割合)] と [Indirect Illumination Occlusion Fraction (インダイレクト イルミネーション オクルージョンの割合)] の両方を「 0 」に設定し、この AO が実際のレベルのライティングに適用されないようにしてください。

PrecomputedAOMask マテリアル表現式ノードを使って、あらゆるマテリアルの AO にアクセスすることができます。 PrecomputedAOMask は 0 と 1 でマスクします。1 は AO の影響を受ける領域を、0 はそうでない領域を示します。 Precomputed AO Mask を使用するためのマテリアルの設定は、次のとおりになります。
