数値演算ノード

シェーダー デザイナーでは、代数演算、論理演算、三角関数演算などの数値演算が演算ノードによって実行されます。

[!メモ]

シェーダー デザイナーで演算ノードを使用する場合、型の上位変換は特に顕著です。型の上位変換が入力パラメーターに与える影響については、「シェーダー デザイナー ノード」の「入力の上位変換」を参照してください。

演算ノードの参照

ノード

詳細

プロパティ

Abs

指定された入力の要素ごとの絶対値を計算します。

入力 X の要素ごとに、結果のすべての要素が正の値になるように負の値が正の値に変換されます。

入力:

X: float、float2、float3、または float4

絶対値を決定する値。

Output:

Output: 入力 X と同じ

要素ごとの絶対値。

なし

加算

指定された入力の要素ごとの合計を計算します。

結果の要素ごとに、入力 X と入力 Y の対応する要素が合計されます。

入力:

X: float、float2、float3、または float4

合計する値のいずれか。

Y: 入力 X と同じ

合計する値のいずれか。

出力

Output: 入力 X と同じ

要素ごとの合計。

なし

シール

指定された入力の要素ごとの切り上げを計算します。

各値はその値以上の最も近い整数に切り上げられます。

入力:

X: float、float2、float3、または float4

切り上げを計算する値。

出力

Output: 入力 X と同じ

要素ごとの切り上げ。

なし

クランプ

指定された入力の各要素を定義済みの範囲にクランプします。

結果の要素ごとに、定義済みの範囲に満たない値が範囲内の最小値に変更され、定義済みの範囲を超える値が範囲内の最大値に変更されます。範囲内の値は変更されません。

入力:

X: float、float2、float3、または float4

クランプする値。

出力

Output: 入力 X と同じ

要素ごとのクランプされた値。

最大値

範囲の最大有効値です。

最小値

範囲の最小有効値です。

コサイン

指定された入力の要素ごとのコサイン (ラジアン) を計算します。

結果の要素ごとに、対応する要素のコサイン (ラジアン) が計算されます。結果の要素の値の範囲は [-1, 1] です。

入力:

X: float、float2、float3、または float4

コサイン (ラジアン) を計算する値。

出力

Output: 入力 X と同じ

要素ごとのコサイン。

なし

[十字形]

指定された 3 要素のベクターのクロス積を計算します。

クロス積を使用して、2 つのベクターで定義される表面の法線を計算することができます。

入力:

X: float3

クロス積の左側のベクター。

Y: float3

クロス積の右側のベクター。

出力

Output: float3

クロス積。

なし

距離

指定されたポイント間の距離を計算します。

正のスカラー値が返されます。

入力:

X: float、float2、float3、または float4

相互間の距離を特定するポイントのいずれか。

Y: 入力 X と同じ

相互間の距離を特定するポイントのいずれか。

出力

Output: 入力 X と同じ

距離。

なし

Divide

指定された入力の要素ごとの商を計算します。

結果の要素ごとに、入力 X の対応する要素が入力 Y の対応する要素で除算されます。

入力:

X: float、float2、float3、または float4

除算された値。

Y: 入力 X と同じ

除数の値。

出力

Output: 入力 X と同じ

要素ごとの商。

なし

ドット

指定されたベクターのドット積を計算します。

スカラー値が返されます。ドット積を使用して、2 つのベクター間の角度を特定することができます。

入力:

X: float、float2、float3、または float4

項のいずれか。

Y: 入力 X と同じ

項のいずれか。

出力

Output: float

ドット積。

なし

切り下げ

指定された入力の要素ごとの切り下げを計算します。

結果の要素ごとに、入力の対応する要素以下の最も近い整数に値が切り下げられます。結果のすべての要素が整数になります。

入力:

X: float、float2、float3、または float4

切り下げを計算する値。

出力

Output: 入力 X と同じ

要素ごとの切り下げ。

なし

Fmod

指定された入力の要素ごとの剰余を計算します。

結果の要素ごとに、入力 Y の対応する要素の整数倍の値 m が入力 X の対応する要素から除算され、その剰余が返されます。倍数 m には、剰余が入力 Y の対応する要素より小さくなり、符号が入力 X の対応する要素と同じになる値が選択されます。たとえば、fmod(-3.14, 1.5) は -0.14 を返します。

入力:

X: float、float2、float3、または float4

除算された値。

Y: 入力 X と同じ

除数の値。

出力

Output: 入力 X と同じ

要素ごとの剰余。

なし

分数

指定された入力の要素ごとの整数部分を削除します。

結果の要素ごとに、入力の対応する要素の整数部分が削除されます。小数部分と符号は変更されません。この小数値の範囲は [0, 1) です。たとえば、-3.14 は -0.14 になります。

入力:

X: float、float2、float3、または float4

小数部分を計算する値。

出力

Output: 入力 X と同じ

要素ごとの小数部分。

なし

Lerp

線形補間。指定された入力の要素ごとの加重平均を計算します。

結果の要素ごとの、入力 X および Y の対応する要素の加重平均。重みは Percent (スカラー) で指定され、すべての要素に均一に適用されます。これを使用して、ポイント、色、属性などの値を補間することができます。

入力:

X: float、float2、float3、または float4

開始値。Percent がゼロの場合、結果は入力と同じです。

Y: 入力 X と同じ

終了値。Percent が 1 の場合、結果は入力と同じです。

Percent: float

入力 X から入力 Y までの距離に対する割合として表されるスカラーの重み。

出力

Output: 入力 X と同じ

指定された入力に対して共線的である値。

なし

積和演算

指定された入力の要素ごとの積和演算を実行します。

結果の要素ごとに、入力 M および A の対応する要素の積が入力 B の対応する要素に加算されます。この演算は、直線のポイントとスロープの数式や、スケールの後にバイアスを適用する数式など、一般的な数式で使用されます。

入力:

M: float、float2、float3、または float4

積和演算する値のいずれか。

A: 入力 M と同じ

積和演算する値のいずれか。

B: 入力 M と同じ

他の 2 つの入力の積に加算する値。

出力

Output: 入力 M と同じ

要素ごとの積和演算の結果。

なし

最大値

指定された入力の要素ごとの最大値を計算します。

結果の要素ごとに、入力の対応する要素の大きい方の値が取得されます。

入力:

X: float、float2、float3、または float4

最大値を計算する値のいずれか。

Y: 入力 X と同じ

最大値を計算する値のいずれか。

出力

Output: 入力 X と同じ

要素ごとの最大値。

なし

最小値

指定された入力の要素ごとの最小値を計算します。

結果の要素ごとに、入力の対応する要素の小さい方の値が取得されます。

入力:

X: float、float2、float3、または float4

最小値を計算する値のいずれか。

Y: 入力 X と同じ

最小値を計算する値のいずれか。

出力

Output: 入力 X と同じ

要素ごとの最小値。

なし

Multiply

指定された入力の要素ごとの積を計算します。

結果の要素ごとに、入力 X および Y の対応する要素が乗算されます。

入力:

X: float、float2、float3、または float4

積和演算する値のいずれか。

Y: 入力 X と同じ

積和演算する値のいずれか。

出力

Output: 入力 X と同じ

要素ごとの積。

なし

正規化

指定されたベクターを正規化します。

正規化されたベクターは、元のベクターの向きを保持しますが、大きさは保持しません。正規化されたベクターを使用すると、ベクターの大きさは重要でない場合の計算が簡単になります。

入力:

X: float2、float3、または float4

正規化するベクター。

出力

Output: 入力 X と同じ

正規化されたベクター。

なし

1 マイナス

1 と指定された入力の差を要素ごとに計算します。

結果の要素ごとに、入力の対応する要素が 1 から減算されます。

入力:

X: float、float2、float3、または float4

1 から減算される値。

出力

Output: 入力 X と同じ

1 と指定された入力の、要素ごとの差。

なし

累乗近似

指定された入力の要素ごとの指数演算 (累乗近似) を実行します。

結果の要素ごとに、入力 X の対応する要素が入力 Y の対応する要素で累乗されます。

入力:

X: float、float2、float3、または float4

ベース値。

Y: 入力 X と同じ

指数の値。

出力

Output: 入力 X と同じ

要素ごとの指数演算。

なし

飽和

指定された入力の各要素を [0, 1] の範囲にクランプします。

この範囲は、パーセンテージなどの相対単位を表すために計算で使用できます。結果の要素ごとに、入力の対応する要素の 0 未満の値が 0 に変更され、1 を超える値が 1 に変更されます。範囲内の値は変更されません。

入力:

X: float、float2、float3、または float4

飽和させる値。

出力

Output: 入力 X と同じ

要素ごとの飽和させられた値。

なし

サイン

指定された入力の要素ごとのサイン (ラジアン) を計算します。

結果の要素ごとに、対応する要素のサイン (ラジアン) が計算されます。結果の要素の値の範囲は [-1, 1] です。

入力:

X: float、float2、float3、または float4

サイン (ラジアン) を計算する値。

出力

Output: 入力 X と同じ

要素ごとのサイン。

なし

平方根

指定された入力の要素ごとの平方根を計算します。

結果の要素ごとに、対応する要素の平方根が計算されます。

入力:

X: float、float2、float3、または float4

平方根を計算する値。

出力

Output: 入力 X と同じ

要素ごとの平方根。

なし

Subtract

指定された入力の要素ごとの差を計算します。

結果の要素ごとに、入力 Y の対応する要素が入力 X の対応する要素から減算されます。これを使用して、1 つ目の入力から 2 つ目の入力までのベクターを計算できます。

入力:

X: float、float2、float3、または float4

減算元の値。

Y: 入力 X と同じ

入力 X から減算する値。

出力

Output: 入力 X と同じ

要素ごとの差。

なし

3-D ベクターの変換

指定された 3-D ベクターを別の空間に変換します。

これを使用すると、ポイントまたはベクターを共通の空間に移して、重要な計算の実行に使用することができます。

入力:

Vector: float3

変換するベクター。

出力

Output: float3

変換されたベクター。

システムから

ベクターのネイティブ空間です。

システムには

ベクターを変換する空間です。