このオペレータは、標準Perlin Noiseのcurl関数を使って、発散のない3Dノイズを計算して生成します。 干渉しているオブジェクトを処理できるため、指定したオブジェクトの周りにノイズフィールドが"流れる"ようになります。
Curl Noiseオペレータの入力には、Turbulent Noiseオペレータでの入力と同じ効果があります。 4つの新しい入力は、 Step Size (h)、 Surface Effect Radius (d)、 Distance to Surface (dist)、 Surface Normal (normal)です。
Note
出力が4Dノイズの場合、 Noise Type パラメータには何の効果もなく、 Perlin Noise のみが使用されます。
Step Size は、ノイズの生成に使用するcurl関数の解像度を制御します。値を小さくすると、ノイズのスパイラルが狭くなります。
Surface Effect Radius は、作成されるノイズフィールドに干渉オブジェクトが与える効果の大きさを決定します。 値を大きくすると、干渉オブジェクトからのかく乱が大きくなります。
Distance to Surface は、符号付きの距離値で、現在位置から、干渉オブジェクトの最も近接したサーフェスまでの距離を示します。 ジオメトリの一部に関係する符号付き距離フィールドの結果を接続すると、生成されたノイズがサーフェスジオメトリに対して最適に反応します。
Surface Normal は、現在位置に最も近いサーフェスの法線です。ボリュームグラディエントの接続は、希望する法線値を渡す1つの方法で、 その結果は指定したサーフェスに沿って"流れる"ノイズフィールドになります。 最もよい結果を得るには、Curl Noiseオペレータを実行するそれぞれの位置の同じサーフェスを Distance to Surface および Surface Normal に設定することです。
Collision SDF は、干渉フィールドを読み込むファイルです。
これは、法線と距離の値を上書きし、代わりに、それらの値はそのファイル内の1番目のボリュームプリミティブから直接計算されるようになります。
これによって、その距離をノイズ計算で可変させることができるので、単一サンプルだけを指定した場合よりも、もっと正確な境界が生成されます。
このファイルは必ずしもディスクファイルである必要はなくて、op:
参照を使ってノードを指定したり、opinput:
参照を使って入力を指定することもできます。
Enable Bouncing SDF は、サンプルポイントがサーフェス内側にある時に、法線方向のノイズ値が外側を向くように反映させます。 これによって、サーフェス内側に留まっているパーティクルをノイズフィールドによって外側に押し出すことができます。
See also |