noise

Perlin ノイズ フィールド ジェネレータに基づいて、-1 ~ 1 の範囲の乱数を生成します。

float noise(float number)

float noise(float xnum, float ynum)

float noise(vector vector)

number には、乱数を生成するためのスカラー値を指定します。戻り値は 1 次元分布に従います。

xnum と ynum には、乱数を生成するためのスカラー値を指定します。戻り値は 2 次元分布に従います。

vector には、乱数を生成するためのベクトルを指定します。戻り値は 3 次元分布に従います。

同じ引数を指定して noise 関数を繰り返し実行すると、実行のたびに同じ乱数が返されます。

時間の経過に伴って一定の割合で細かく増減する引数を指定して noise 関数を繰り返し実行すると、時間の経過に従って増減する乱数が返されます。

例 1

noise(time)

アニメーションの再生中にエクスプレッションが実行されるたびに、-1 ~ 1 の範囲の乱数が返されます。time 変数の値は時間の経過に伴って小刻みに増加するため、返される値はランダムなパターンを保ちながらスムーズに増減します。返される値とアニメーション時間の関係をプロットすると、次のようなグラフになります。

例 2

noise(frame)

アニメーションの再生中にエクスプレッションが実行されるたびに、-1 ~ 1 の範囲の乱数が返されます。frame 変数は多少粗く増加するため、返される値の増減パターンも少し粗くなります。返される値とアニメーション時間の関係をプロットすると、次のようなグラフになります。

frame 変数と time 変数の値が同じの場合は、noise (frame)と noise (time)の戻り値が同じになります。たとえば、frame が 10 のときの noise (frame)の戻り値と time が 10 のときの noise (time)の戻り値は同じです。