Houdini 20.0 流体

流体ソーシング

On this page

SOP FLIP流体には、FLIP Source SOPノードの Boundary ドロップダウンメニューを介してパーティクルをソーシングするためのメソッドが3つ( NoneVelocityPressure )あります。 これらの基本的な違いと仕組みについて、以下の各セクションで詳しく説明します。

Note

ソースオブジェクトは閉じていなくてはならず、ソリッド3Dまたはボリュームオブジェクトである必要があります。 開いたジオメトリまたは平面や円盤などの2Dジオメトリは使用できません。

Note

様々なFLIP Boundaryノードとそのソーシングメソッドの違いを説明するために、グラスに水を注ぐと想定しましょう。 重要なのは、グラスの底にSphere SOPノードなどのソースオブジェクトを配置することです。 以下のビデオが、その結果です。

FLIP Boundary: None

このノードでは、初期Velocityを定義する必要はなく、デフォルト設定で始めることができます。 シミュレーションすると、ソースオブジェクトの最上部付近の特定の高さに到達するまでグラスが満たされます。 その後、ソーシングが停止し、水位が一定に維持されます。 この挙動は、パーティクルを水面下で作成できないDOPベースのFLIP Solverでも同じです。

FLIP Boundary: Velocity

デフォルトでは、 Normal Velocity1でオブジェクトの法線に沿ってパーティクルが放出されます。 Additional Velocity を使用すると、速度を上げ、パーティクルを特定の方向に向けることができます。 このVelocityベクトルの大きさは、 Normal Velocity ベクトルに加算されます。 例えば0,-1,0では、パーティクルはより素早く落下するようになります。

Note

パーティクルを作成するには、少なくとも1つのVelocityパラメータが0より大きい必要があります。 そうでないと、オブジェクトが移動/変形します。

シミュレーションすると、水位が上がっていくのを確認できます。 BoundaryVelocity に設定すると、水はソースオブジェクトを越えて上昇し、パーティクルを作成し続けます。 シミュレーションを十分に長く実行すれば、グラスからも溢れます。

FLIP Boundary: Pressure

デフォルト設定では、 Uniform Pressure1で、パーティクルはソースオブジェクトの法線に沿って放出されます。 圧力を変更すると、パーティクル数が急激に増加することがあるため注意してください。 また、パーティクルの速度が非常に速くなる場合もあり、衝突オブジェクトとの組み合わせによっては漏れが起こりがちです。 そのため、 Uniform Pressure パラメータをアニメーションさせることを検討してください。

  1. 開始フレームに移動して、 Uniform Pressure0.1に設定します。

  2. Uniform PressureAlt + クリックしてアニメーションキーを打ちます。

  3. 全圧力を適用したいフレームに移動して、1と入力します。

  4. 再度、 Uniform PressureAlt + クリックして、もう1つキーを打ちます。

シミュレーションすると、グラスがすぐに満たされ、水がソースオブジェクトを越えて上がっていくことを確認できます。 グラスに十分な高さがある場合は、一定の高さでソーシングが停止することも観察できます。 これが、流体が1の圧力に到達した瞬間です。 Uniform Pressure が閾値のように機能します。

Hydrostatic Pressure では、最大 Water Level を定義することができます。 流体がこの高さに到達するとソーシングが停止します。 水位はグリッドで示されます。 それを表示するには、ソースノードの Display/Render フラグをオンにします。

デフォルトでは、 Water Level0から開始されます。 開始高さをオフセットしたい場合は、 Water OriginY 値を調整します。 グラスを使用したサンプルシーンは、オブジェクトの中空スペースはグラスの底面から約0.15ユニット上から始まります。 Water Origin パラメータの Y 値を0.15に変更すると、適切な高さから満たされていきます。

Note

Hydrostatic Pressure によるシミュレーションは、調整した Water Level よりも にソースオブジェクトが配置されていて、且つ、 Pressureのターゲット値が1の場合にのみ正しく動作します。

Pressureソーシングと Additional Velocity を組み合わせることで、パーティクルに初期方向を与えることができます。 Scale VelocityNormal Velocity を使用することもできますが、複数のパラメータを組み合わせる際は注意が必要です。 例えば、値が合算されて、パーティクルが非常に高速になったり、オブジェクトに漏れが起きる可能性があります。

Note

Pressureソーシングでは、パーティクルのチラツキが発生することがあります。 FLIP Solverの Advanced ▸ Solve Pressure With Adaptivity オプションをオフにすると、その結果を改善することができます。

Pressureソーシングは Pressure Voxel Band パラメータを使用します。 このパラメータは内部的にソースボリュームを収縮させて、流体の速度を落とします。 デフォルト値の2ボクセルは、たいていの状況で上手く機能します。

その他の方法

FLIP Solverは、ドメイン境界で新しいパーティクルを作成することもできます。 ここではFLIP Sourceノードは必須ではありません。 これは、海や川の船やボートなどに使用すると面白い結果を得られます。 ソルバはドメインの外側にパーティクルレイヤーを作成します。 ドメインの内側と相互作用したパーティクルは削除され、新しいパーティクルが外側からソーシングされます。

  1. FLIP Container SOPを作成して、シミュレーションドメインの寸法を指定します。

  2. FLIP Solverノードを追加し、最初の3つの入力をコンテナの出力に接続します。

  3. ソルバで、 Waterline を有効にして水面を作成します。

  4. さらに Additional Velocity を追加すると、パーティクルに速度と方向を与えることができます。

パーティクルレイヤーを作成するもう1つの方法は、ソルバの4番目の入力を使用することです。 この方法に関する詳細なチュートリアルは、以下にあります。

流体

初心者向け

パーティクル流体(SOP)

粘度のある流体(SOP)

最適化(SOP)

FLIP構成ツール(SOP)

パーティクル流体(DOP)

粘度のある流体(DOP)

オーシャン(DOP)

最適化

  • 流体の圧縮

  • 流体シミュレーションの分散

    Distributeシェルフツールは、HQueueを使用して複数マシンのファーム上で並列処理ができるように、オブジェクトのシミュレーションネットワークをセットアップします。