On this page | |
Since | 17.0 |
Whitewater Solverは、ソースの液体シミュレーションからWhitewaterパーティクルをシミュレーションします。 このソルバを使って動的なFoam(泡沫)、Spray(飛沫)、Bubble(泡)のパーティクルを追加することで、大元のシミュレーションのルックを向上させることができます。 これらのパーティクルは、その液体シミュレーションの流れの影響を受けて相互に作用するので、現実的な流体っぽい挙動を制御することができます。
セットアップ ¶
ソルバを動作させるには、液体のVelocityと符号付き距離フィールドだけでなく、Emission(放出)ボリュームも必要です。
Velocityフィールドには、ベクトルフィールドVDB(vel
)または別々の3つのボリューム(vel.x
, vel.y
, vel.z
)のどちらかを指定することができます。
この符号付き距離フィールドをsurface
という名前にしてください(このボリュームの密度が濃くて疎らなVDBでない場合は、 Maximum Half-Width チェックボックスを外してください)。
Whitewaterパーティクルの発生を容易にするために、Emissionボリューム(emit
)も準備する必要があります。
Whitewater Sourceノードを使用することで、FLIPシミュレーションからそのデータを取り出すことができます。
Note
もはや外部のWhitewater Emitterは不要になりましたが、それをかませることで手動でパーティクルをシミュレーションに注入することができます。
とはいえ、ソースを追加するお薦めの方法は、emit
ボリュームを修正することです。
例えば、Whitewater Sourceの2番目の入力を指定し、 Add Extra Sources オプションを有効にすることで、それが可能です。
入力 ¶
Objects to Solve
パーティクルジオメトリの格納先となるWhitewater Object。
Particle Forces
パーティクルに適用する追加フォース。この時点で、色々なフォースコンポーネントが計算されますが、まだ結合されていません。
Extra Sources
ジオメトリに追加するWhitewaterパーティクル。この時点で、内部放出が決まり、新しく発生したパーティクルはjustborn
グループに格納されます。
Post-Solve
Whitewater Solverがステップ毎に実行された後に作動させるソルバ。
パラメータ ¶
Volume Source
ソルバ用ソースボリューム(液体のVelocityと符号付き距離フィールド)を用意したSOPノードのパス。
Import Volumes
このオプションを有効にすると、液体ボリュームがWhitewater Objectにコピーされて、簡単にそれにアクセスできるだけでなく、可視化もできます。
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倍の距離の幅です。
Add State Attributes
有効にすると、Whitewaterパーティクルにbubble
、foam
、spray
のPointアトリビュートが追加されます。
これらのアトリビュートの値の範囲は、0-1で、各パーティクルのそれぞれの状態の“強さ”を示します。
Emission ¶
Emission Source
Emission VDB(emit
)を含んだSOPノードのパス。
Limit Emission
このオプションを有効にすると、既存の密度の濃いWhitewater領域の放出レートを下げます。
Emission Amount
Whitewaterの放出量に対する乗数。
Velocity Offset
ソースポイントのVelocityベクトル方向に沿った位置(ワールド単位)でWhitewaterパーティクルが生成されます。
Velocity Multiplier
WhitewaterパーティクルがソースポイントのVelocityを継承する前に、そのVelocityに適用される乗数。
Maximum Initial Speed
新しく生成されたWhitewaterパーティクルの速度が、この値を超えないようにします。
Lifespan
Whitewaterパーティクルの平均寿命(秒)。
Seed
パーティクルの放出と死亡に関するすべてのランダムさを制御するシード。
Bubbles Aging Rate
Bubble(泡)に対する老化レート。Bubble(泡)パーティクルの寿命を延ばしたり、短くすることができます。
Note
このパラメータは、パーティクルの死亡確率を上げます。age
アトリビュートには実際の年齢が含まれています。
Foam Aging Rate
Foam(泡沫)に対する老化レート。Foam(泡沫)パーティクルの寿命を延ばしたり、短くすることができます。
Note
このパラメータは、パーティクルの死亡確率を上げます。age
アトリビュートには実際の年齢が含まれています。
Spray Aging Rate
Spray(飛沫)に対する老化レート。Spray(飛沫)パーティクルの寿命を延ばしたり、短くすることができます。
Note
このパラメータは、パーティクルの死亡確率を上げます。age
アトリビュートには実際の年齢が含まれています。
Add Noise
このオプションを有効にすると、新しく発生したパーティクルにVelocityノイズが追加されます。 ノイズ制御に関する詳細は、Turbulent Noiseを参照してください。
Limits ¶
Collision SOP
静的衝突ジオメトリ用の符号付き距離フィールドを含んだSOPノードのパス。 このフィールドは、Foam(泡沫)を液体表面から引き離してソリッド上(例えば、ビーチ上)に定着させたい場合に指定してください。
SDF Name
Collision SOP で指定した符号付き距離フィールドのVDBまたはボリュームの名前。
Closed Boundaries
これらのパラメータでは、閉じたい境界を選択します。パーティクルは閉じた境界で跳ね返り、開いた境界を超えたパーティクルは消滅します。
Limit Size
Whiterwater領域のサイズ。
Limit Center
Whitewater領域の中心。
Visualize Limits
Whitewater領域の境界のガイドを表示します。
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フィールドに適用する追加乗数。
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でない場合、その終点を超えたすべてのパーティクルも密度コントロールが有効になります。
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パーティクル間の動きが、より粘着的になります。
Vorticity
Vorticle(渦度)を維持することで、エネルギー消失を中和します。
Erosion ¶
Enable Erosion
この機能を有効にすると、密度の濃い領域ほどFoam(泡沫)は維持され、疎らな領域ほどFoam(泡沫)は侵食します。
Depth Range
液体表面からこの距離以内にあるパーティクルが侵食されます。
Erosion Strength
Foam(泡沫)の密度が薄い領域での侵食の強度。このパラメータの値が高いほど、より速くFoam(泡沫)が消えます。
Preservation Strength
侵食から保護したいWhitewaterの密度範囲を制御します。
Repellants ¶
Enable Repellants
Whitewaterを押し離して細胞状のFoam(泡沫)構造を生成するRepellant(撥水)パーティクルを作成して維持します。
これらのパーティクルは、オブジェクトのRepellants
ジオメトリに格納されます。
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の密度が、指定した閾値を超えると、その領域が分散の対象として考慮されます。
Seed
ランダムなRepellants(撥水ポイント)の分散を制御するシード。
Match Radius Distribution
このオプションを有効にすると、Repellants(撥水ポイント)の分散領域が、指定した 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 Within Collision
衝突ジオメトリからこの距離の範囲内にあるパーティクルの深度コントロールが無効になります。 この機能を使用するには、 Collision SOP を指定する必要があります。
Off Velocity Angle
パーティクルのVelocityベクトルとサーフェス法線との角度がこの値以下であるパーティクルの深度コントロールが無効になります。
Maximum Acceleration
パーティクルが表面に付着し続けられる最大加速度。
Stiffness by Depth
深度別に適用される深度コントロールの厳密さを制御します。 値が低いほど、厚みのあるFoam(泡沫)が生成されます。
Advanced ¶
Maximum Half-Width
ゼロを超えて正確な距離を評価できるように、液体( Collision SOP を指定されている場合は、さらに衝突ジオメトリも)の符号付き距離フィールドのVDBが自動的に有効になります。 Maximum Half-Width パラメータを使用して、アクティブなボクセルの数を制限することで、計算リソースの浪費を回避することができます。 このオプションは、密度の濃いSDFのボリュームに対しては無効にしてください。
Time Scale
実際のタイムステップに適用される全体スケール。
Delete Attributes
メモリとストレージを節約するために、ソルバで使用されている内部アトリビュートから削除したいアトリビュートのリスト。
Use OpenCL
OpenCLデバイスを使用することで、密度コントロールの計算を高速化することができます。
See also |