On this page | |
Since | 20.0 |
概要 ¶
Whitewater Solverは、ソースの液体シミュレーションからWhitewaterパーティクルをシミュレーションします。 このソルバを使って動的なFoam(泡沫)、Spray(飛沫)、Bubble(泡)のパーティクルを追加することで、大元のシミュレーションのルックを向上させることができます。 これらのパーティクルは、その液体シミュレーションの流れの影響を受けて相互に作用するので、現実的な流体っぽい挙動を制御することができます。
このソルバには、Emission(放出)ボリューム、液体のVelocityフィールドと符号付き距離フィールド、シミュレーションコンテナ、(あれば)液体シミュレーション時に使用されるコリジョンジオメトリが必要です。
Velocityフィールドには、ベクトルフィールドVDB(vel
)または別々の3つのボリューム(vel.x
,vel.y
,vel.z
)のどちらかを指定することができます。
この符号付き距離フィールドをsurface
という名前にしてください(このボリュームの密度が濃くて疎らなVDBでない場合は、 Maximum Half-Width チェックボックスを外してください)。
Whitewater Sourceノードを使用することで、FLIPシミュレーションからそのデータを取り出すことができます。
詳細は、SOP Whitewaterのページを参照してください。
入力 ¶
Emission and Fluid Fields
Emission(emit
)ボリュームと流体フィールド(surface
とvel
)を含んだWhitewater Sourceからの1番目の出力。
Container
surface
フィールドまたはジオメトリハルとして使用するWhitewater Sourceからのコンテナジオメトリ。
Collisions
surface
フィールドとvelocity
フィールドとして使用するWhitewater Sourceからのすべてのコリジョンオブジェクト。
出力 ¶
Whitewater Particles
シミュレーションされたWhitewaterパーティクル。
Container
Container 入力のパススルー。
Collisions
Collisions 入力のパススルー。
パラメータ ¶
Reset Simulation
このボタンをクリックすると、シミュレーションが更新され、RAMからすべてのキャッシュデータを削除します。 既にシミュレーションされているフレームは、ディスクにキャッシュ化しない限り消されます。
Start Frame
シミュレーションを開始するフレームを指定します。 このフレームまでは、計算は実行されません。 シミュレーションをディスクにキャッシュ化する場合、 Start Frame に到達するまでは、空っぽのフレームが書き出されます。
Setup ¶
General ¶
Whitewater Scale
近隣のWhitewaterパーティクル間の間隔を制御します。このパラメータを下げると、シミュレーション内のパーティクル数が(3乗のスケールで)増えます。
Voxel Size
Densityボリュームのボクセルサイズ。 このボリュームは、放出量の制限、Foam(泡沫)の侵食、さらに、 Density Threshold が有効な時には、Repellant(撥水ポイント)のばら撒きに使用されます。 Voxel Size は、最低でも Whitewater Scale の2倍の大きさにしてください。
Foam Location
液体表面を基準としたFoam(泡沫)の位置。 すべての深度範囲がこのパラメータを評価します。 つまり、 Foam Location を変更することで、他のパラメータを変更することなくFoamレイヤーの位置を上下させることができます。
Depth Range
このパラメータは、フォースと老化レートが補間されるFoamレイヤーを基準とした幅を制御します。 Buoyancy by Depth 、 Advection by Depth 、 Multiplier by Depth 、 Repulsion by Depth の水平軸は、この Depth Range の0を基準にした2倍の距離の幅です。
Keep Attributes
削除したくない既存のアトリビュートを指定します。 これにマッチしたすべてのアトリビュートは削除されず、それ以外のすべてのアトリビュートが削除されます。
Add State Attributes
有効にすると、Whitewaterパーティクルにbubble
、foam
、spray
のPointアトリビュートが追加されます。
これらのアトリビュートの値の範囲は、0-1で、各パーティクルのそれぞれの状態の“強さ”を示します。
Add Relative Density Attribute
有効にすると、パーティクル単位でrelativedensity
がソルバによって計算されます。
このアトリビュートは、各パーティクルの隣接パーティクルとの密接度を示しています。
このアトリビュート値は(0,1)
範囲にありで、1
はパーティクルが非常に密集していることを示します。
Simulation ¶
Substeps
DOPシミュレーションがフレーム毎に実行されるサブステップ数。
Cache Simulation
シミュレーションキャッシュを有効にします。 非常に大規模なシミュレーションの場合、このオプションを無効にした方が、シミュレーションのメモリ使用量を最小限に抑えることができます。
Cache Memory (MB)
シミュレーションをメモリにキャッシュ化するために確保されるRAM容量。
Physical ¶
Bounce
オブジェクトの弾力性。Bounceが1.0の2つのオブジェクトが衝突すると、それらのオブジェクトはエネルギーを消失せずに跳ね返ります。 Bounceが0.0の2つのオブジェクトが衝突すると、それらのオブジェクトは停止します。
Bounce Forward
オブジェクトの接線方向の弾力性。Bounce Forwardが1.0の2つのオブジェクトが衝突すると、それらの接線方向の動きは、摩擦からの影響のみを受けます。 Bounce Forwardが0.0の2つのオブジェクトが衝突すると、それらの接線方向の動きは、一致します。
Friction
オブジェクトの摩擦係数。0の値は、摩擦なしを意味します。
これは、接線Velocityが衝突と静止接触で影響を受ける強さを制御します。
Dynamic Friction Scale
滑るオブジェクトは、静止しているオブジェクトよりも摩擦係数が低いです。このパラメータは、2つのオブジェクトに関連したスケール係数です。 これは摩擦係数ではなくて、0から1の間のスケールです。
1の値は、動摩擦と静摩擦が同じになることを意味します。0の値は、静摩擦を越えると、オブジェクトが摩擦なしで作用することを意味します。
Emission ¶
Limit Emission
このオプションを有効にすると、既存の密度の濃いWhitewater領域の放出レートを下げます。
Emission Amount
Whitewaterの放出量に対する乗数。
Project New Points to Foam Location
新しい放出ポイントが指定した Depth Range の範囲内にある時、それらのポイントをサーフェス上に投影します。
Depth Range
サーフェスに投影されるポイントの選択に使用される深度範囲。
Note
放出パターン内の不連続性が目立たないように、この範囲内の両端には滑らかな遷移が行なわれます。
Velocity Offset
ソースポイントのVelocityベクトル方向に沿った位置(ワールド単位)でWhitewaterパーティクルが生成されます。
Velocity Multiplier
WhitewaterパーティクルがソースポイントのVelocityを継承する前に、そのVelocityに適用される乗数。
Maximum Initial Speed
新しく生成されたWhitewaterパーティクルの速度が、この値を超えないようにします。
Lifespan
Whitewaterパーティクルの平均寿命(秒)。
Advanced ¶
Seed
パーティクルの放出と死亡に関するすべてのランダムさを制御するシード。
Aging Rates ¶
Bubbles
Bubble(泡)の老化レート。 これを使用することで、Bubble(泡)パーティクルの寿命を延ばしたり短くすることができます。
Note
このパラメータは、パーティクルの死亡率を上げます。
age
アトリビュートには実際の年齢がそのまま含まれます。
Foam
Foam(泡沫)の老化レート。 これを使用することで、 Foam(泡沫)パーティクルの寿命を延ばしたり短くすることができます。
Note
このパラメータは、パーティクルの死亡率を上げます。
age
アトリビュートには実際の年齢がそのまま含まれます。
Spray
Spray(飛沫)の老化レート。 これを使用することで、Spray(飛沫)パーティクルの寿命を延ばしたり短くすることができます。
Note
このパラメータは、パーティクルの死亡率を上げます。
age
アトリビュートには実際の年齢がそのまま含まれます。
Velocity Noise ¶
Add Noise
このオプションを有効にすると、新しく誕生したパーティクルにVelocityノイズを加えます。 ノイズコントロールの詳細は、Turbulent Noiseのヘルプを参照してください。
Noise Type
ノイズタイプを指定します。
Frequency
ノイズのスケール。この値を小さくすると、特徴サイズが大きくなります。
Offset
ノイズフィールドを効率的に空間内で移動させることができます。
Amplitude
ノイズの振幅。
Roughness
より高い周波数ノイズの振幅削減の寄与度。
Attenuation
ノイズを指定した指数で累乗します。
Turbulence
使用するノイズ生成の数。
Forces ¶
Gravity
重力による加速度。
Buoyancy
浮力による加速度。
Buoyancy by Depth
Buoyancyに適用する乗数。
Base Advection Strength
液体のVelocityフィールドに沿ってWhitewaterを動かす移流フォースの強さ。
Advection by Depth
Advection Strengthに適用する乗数。
Base Velocity Multiplier
液体の移流前のVelocityフィールドに適用する乗数。
Multiplier by Depth
液体のVelocityフィールドに適用する追加乗数。
Wind ¶
Wind Velocity
横風のフィールドの方向と大きさ。
Wind Speed
Wind Velocity 用のスケールで、風の方向に影響を与えることなく簡単に風の大きさだけを調整することができます。
Air Resistance
パーティクルがこの風のフィールドから影響を受ける強さ。
Noise Amplitude
ノイズフィールドの最大値。
Noise Swirl Size
ノイズパターンのサイズ。
Speed Range
(0, 1)
範囲にマッピングされる(風を基準とした)パーティクル速度の範囲で、各パーティクルが風から影響を受ける量を制御します。
Speed Ramp
デフォルトでは、速度は(0, 1)
範囲に線形マッピングされます。
独自のマッピングカーブを指定することで、この挙動を変更することができます。
デフォルトの構成だと、(風を基準として)高速に移動するパーティクルほど風の影響を強く受けます。
Relative Density Range
(0, 1)
範囲にマッピングされる相対密度の範囲で、各パーティクルが風から影響を受ける量を制御します。
Relative Density Ramp
デフォルトでは、(0, 1)
範囲からマイナスの線形マッピングを使用して相対密度が変換されます。
独自のマッピングカーブを指定することで、この挙動を変更することができます。
デフォルトの構成だと、(水飛沫や霧など)緩く詰められたパーティクルを風に漂わせやすくしますが、密に詰められたパーティクルはほとんど風に無視さます。
Wind Shadow ¶
Enable Collider Shadow
コリジョンサーフェスフィールドを使用して、風を遮蔽します。
Enable Water Shadow
水面を使用して風を遮蔽します。
Max Distance
遮蔽をチェックする最大距離。
Foam ¶
Clumping ¶
Enable Density Control
Whitewaterパーティクルの密度コントロールを有効にします。
Depth Range
この範囲内にあるパーティクルが密度コントロールの影響を受けます。
Note
( Variable Stiffness が有効な時) Stiffness by Depth の終点が0でない場合、その終点を超えたすべてのパーティクルも密度コントロールが有効になります。
Constraint Stiffness
密度拘束の強度で、ターゲット密度からどれだけの偏差で厳しくペナルティを課すのか制御します。
Variable Stiffness
液体深度別に密度拘束の強度を可変できるようにします。
Note
このソルバは、pbfstiffness
Pointアトリビュートが存在すれば、 Variable Stiffness が無効になっていても、密度拘束の強度を可変させます。
Stiffness by Depth
液体深度別に密度拘束の強度を制御します。 このランプの終点が0でない場合、その終点を超えたすべてのパーティクルも密度コントロールが有効になります。
Advanced ¶
Neighbors ¶
Neighborhood Size
各パーティクルで必要な隣接パーティクルのポイント数。
Adaptive Range
グローバル半径の倍数として許容されるカーネル半径の範囲。
Maximum Neighbors
Whitewaterパーティクルの隣接パーティクルのポイント数は、この数を超えません。
Inclusion Chance
密度コントロール下にあるすべてのパーティクルの内、この割合のパーティクルが実際に使用されます。 Inclusion Chance を下げると、実行時間が短くなりますが、品質が下がってしまいます。
Note
密度コントロール下にあるすべてのWhitewaterパーティクルは、controldensity_candidate
グループに入ります。
密度コントロール下で実際に使用されるパーティクルは、controldensity
グループに入ります。
Constraint Iterations
パーティクル毎に拘束の適用を繰り返す回数。
Maximum Acceleration
拘束によってパーティクルに適用可能な最大加速度。
Tensile Radius
パーティクルが凝集しないように近隣パーティクルに対して反発力を適用します。 このパラメータは、その反発力が Tensile Strength と同じになる距離(パーティクルのカーネル半径の割合)を決定します。
Tensile Strength
近隣パーティクル間の反発力の大きさ。
Viscosity
Viscosity(粘度)を有効にすると、Velocityが拡散するようになって、近隣のWhitewaterパーティクル間の動きが、より粘着的になります。
Erosion ¶
Enable Erosion
この機能を有効にすると、密度の濃い領域ほどFoam(泡沫)は維持され、疎らな領域ほどFoam(泡沫)は侵食します。
Depth Range
液体表面からこの距離以内にあるパーティクルが侵食されます。
Erosion Strength
Foam(泡沫)の密度が薄い領域での侵食の強度。このパラメータの値が高いほど、より速くFoam(泡沫)が消えます。
Preservation Strength
侵食から保護したいWhitewaterの密度範囲を制御します。
Repellants ¶
Enable Repellants
Whitewaterを押し離して細胞状のFoam(泡沫)構造を生成するRepellant(撥水)パーティクルを作成して維持します。
これらのパーティクルは、オブジェクトのRepellants
ジオメトリに格納されます。
Reseed Frames
撥水剤を撒き直すフレーム間隔。
Feature Size Range
Repellant(撥水ポイント)のサイズの範囲(radius
Pointアトリビュートに保存されます)。
Strength Range
Repellant(撥水ポイント)の強度の範囲(magnitude
Pointアトリビュートに保存されます)。
Noise Range
Repellants(撥水ポイント)のnoise
Pointアトリビュートの値の範囲。
このアトリビュートは、各Repellant(撥水)の形状を制御し、0の値は完全な円で、1の値が最も“ノイズ”がのっています。
Pulse Frequency Range
Repellants(撥水ポイント)のpulse
Pointアトリビュートの値の範囲。
このアトリビュートは、“ノイズのある”Repellantの形状が進化する速さを制御します。
Life Range
有効にすると、Repellants(撥水ポイント)は、時間が経過すると老化して死亡します。 Repellant(撥水ポイント)の寿命は、指定した範囲からランダムに選択されます。
Density Threshold
このオプションを有効にすると、Repellants(撥水ポイント)の分散は、既にWhitewaterを含んでいる領域に制限されます。 相対的なWhitewaterの密度が、指定した閾値を超えると、その領域が分散の対象として考慮されます。
Advanced ¶
Seed
ランダムなRepellants(撥水ポイント)の分散を制御するシード。
Match Radius Distribution
このオプションを有効にすると、Repellants(撥水ポイント)の分散領域が、指定した Radius Distribution に合致します。 無効にすると、分散領域が均一になります。
Radius Distribution
撥水半径の分布を定義します。
Strength by Speed
有効にすると、Repellant(撥水)強度は、液体の速度に基づいて減衰します。 デフォルトの設定では、例えば、Repellants(撥水)は遅い領域でのみ有効になります。
Speed Range
Repulsion by Speed の水平軸は、この範囲に呼応します。
Repulsion by Speed
大元の液体の速度に基づいたRepellant(撥水)強度に適用する乗数。
Strength by Acceleration
有効にすると、Repellant(撥水)強度は、液体の加速度に基づいて減衰します。 デフォルトの設定では、例えば、Repellants(撥水)は、急に加速している領域では無効になります。
Acceleration Range
Repulsion by Acceleration の水平軸は、この範囲に呼応します。
Repulsion by Acceleration
大元の液体の加速度に基づいたRepellant(撥水)強度に適用する乗数。
Repulsion by Depth
Whitewaterパーティクルの深度に基づいた反発力に適用する乗数。
Adhesion ¶
Enable Depth Control
深度コントロールの仕組みを有効にすることで、Foam(泡沫)を流体表面に付着し続けることができます。
Upper Surface Only
このオプションを有効にすると、(重力の方向で判断された)液体の上側表面上のパーティクルにのみ粘着力が適用されます。 この機能を有効にすると、下側または側面の部分に付着するFoam(泡沫)が減ります。
Control Range
液体表面からこの距離の範囲内にあるパーティクルが深度コントロールの影響を受けます。
Off Velocity Angle
パーティクルのVelocityベクトルとサーフェス法線との角度がこの値以下であるパーティクルの深度コントロールが無効になります。
Stiffness by Depth
深度別に適用される深度コントロールの厳密さを制御します。 値が低いほど、厚みのあるFoam(泡沫)が生成されます。
Visualization ¶
Show Collision
このチェックボックスを有効にすると、コリジョンオブジェクトのサーフェスのワイヤーフレーム表現が表示されるので、漏れや解像度が足りているかどうかチェックすることができます。
Particles ¶
Mode
None
パーティクルの色は影響を受けません。
Depth
Depth Range と Depth Ramp を使用して、パーティクルの深さに応じてパーティクルに色を付けます。
Speed
Max Speed と Speed Ramp を使用して、パーティクルの速度に応じてパーティクルに色を付けます。
State
Bubble 、 Foam 、 Spray のユーザ定義の色を使用して、パーティクルの状態に応じてパーティクルに色を付けます。
Relative Density
Relative Density Ramp を使用して、パーティクルの相対密度に応じてパーティクルに色を付けます。
Depth Range
(0, 1)
範囲にマッピングされるパーティクル深度の範囲。
Max Speed
このパラメータを使用して、流体のVelocityの差分を視覚化します。 調整した値以上のVelocityのすべてのパーティクルが同じ色で表示されます。
Depth Ramp
リマップされたパーティクルの深度を使用してパーティクルに色を付けるカラーランプ。
Speed Ramp
リマップされたパーティクルの速度を使用してパーティクルに色を付けるカラーランプ。
Bubble
Bubble(泡)パーティクルの視覚化に使用される色。
Foam
Foam(泡沫)パーティクルの視覚化に使用される色。
Spray
Spray(飛沫)パーティクルの視覚化に使用される色。
Relative Density Ramp
リマップされたパーティクルの相対密度を使用してパーティクルに色を付けるカラーランプ。
Advanced ¶
Maximum Half-Width
ゼロを超えて正確な距離を評価できるように、液体( Collision SOP を指定されている場合は、さらに衝突ジオメトリも)の符号付き距離フィールドのVDBが自動的に有効になります。 Maximum Half-Width パラメータを使用して、アクティブなボクセルの数を制限することで、計算リソースの浪費を回避することができます。 このオプションは、密度の濃いSDFのボリュームに対しては無効にしてください。
Time Scale
実際のタイムステップに適用される全体スケール。
Use OpenCL
OpenCLデバイスを使用することで、密度コントロールの計算を高速化することができます。
Save Checkpoints
通常、 Allow Caching to Disk が有効で、シミュレーションがメモリ制限に到達している時、シミュレーションはtempディレクトリにあるファイルに保存されます。 これらは有効な.simファイルである一方、管理が難しいです。このオプションがオンの時、各フレームは即座に指定したディレクトリにキャッシュ化されます。 各フレームはCache Memoryに到達するまでメモリ内に保存されますが、(既にディスク上にあるので)この時点ではディスクには保存されません。 チェックポイントの利点は、キャッシュフレームが既に存在する場合、たとえシミュレーションがリセットされたとしても、DOPはそのフレームをクックせず、代わりにそのフレームを読み込むことです。 さらに言えば、要求されたフレームの前で、最後の有効なチェックポイントフレームの後のフレームをクックするだけです。 そのため、もしcache_50.simを持っていてフレーム100をクックしようとする場合、フレーム50でクッキングを開始することができます。
Save Checkpointsの使用は、Automatic ModeでFile DOPを使うことと同等です。 しかし、File DOPでフレーム50に飛ぼうとするとき、最初の50フレームを読み込まなくてはなりません。 チェックポイントを使えば、このステップをスキップできます。
Checkpoints ¶
Checkpoint Files
チェックポイントを保存するためのファイルシーケンス。これらは.simファイルで、File DOPまたは File SOPを使って読み込むことが可能です。変数$SFはフレーム番号を指定するために使わなければいけません。 $Fはシミュレーション空間で動作しているので、使うことはできません。$SF4もサポート済みです。
Checkpoint Trail Length
チェックポイントファイルが削除される前にどれだけの量の履歴が保存されるか。 値が0では、キャッシュファイルは削除されません。 そうでなければ、この値よりも古いフレームはディスクから消去されます。
Note
削除されるのは、Houdiniのこのセッションで作成されたチェックポイントファイルのみです。 もし存在するキャッシュファイルでHoudiniを再スタートする場合、削除されません。 クラッシュした位置から再スタートしたいでしょうし、もしまたクラッシュした場合にまた同じ位置から 再スタートできることを保証したかったので、このような仕様にしました。
Checkpoint Interval
チェックポイント間のフレーム間隔。これを1に設定すると、フレーム毎にチェックポイントを保存します。 これを高い値に設定すると、指定したフレームおきにチェックポイントを保存します。 例えば、これを5に設定すると、5フレームおきにチェックポイントを保存します。
大きなシミュレーションを走らせる場合は、これによってディスク容量を節約することができます。
See also |