>   >  Houdini Cook Book:Vol. 99 POP Fluid
Vol. 99 POP Fluid

Vol. 99 POP Fluid

03 POP Fluid

ベースのフローが完了したら、最終的にPOP Fluid DOP【A】を使って、ParticleをFluidへ変換します。追加するノードは1つですが、実際は数多くのMicro Solverの集まりで、PBDをベースにした設計になっています。これ1つで、動きに対して非常に簡単にFluidの質感を出すことができます【1】

実際にディテールを見てみると、通常のParticleにメッシュを貼ったもの【2】と、Fluidに貼ったもの【3】では、一目瞭然のちがいが見て取れます。

設定も非常にシンプルです。パラメータの解説は後述しますが、基本的にFluidの特性をもたせ、凝集と張力をシミュレーションし、ParticleそれぞれのPositionを更新するといったものです。元々はWhitewater Solver DOPの内部にひっそりと使用されているものですが、今後発展してメインでも使用していくようなアプローチになると考えられます。SPHのような粒子法を用いたシミュレーションがそのコストの高さから嫌われがちではありますが、PBDのアプローチとOpenCLの存在がある昨今、ディテールを求めるようなシチュエーションでは、非常に有用だと考えます。

04 Operators

主要ノードを解説します。

●POP Fluid DOP

今回紹介するノードは、POP Fluid DOPです。Particle間を凝集や張力といった特性を考え、フォースでその距離を保ちます。シンプルな流体を表現するのにはうってつけのノードです。

Projection Type:主にUpdate Positionsを使用します。Particleの位置とVelocityを更新します。
Particle Separation:近接しているParticleとのターゲット距離の値です。
Constraint Iterations:Particle間の距離を正確に保つための精度です。
Constraint Stiffness:Partcie間の距離を保とうとする力です。
Maximum Acceleration:Constraintによって加速する最大の速度です。高いほど、Constraintが不安定になる可能性があります。
Tensile Radius:Particleが凝集しすぎないようにする最小の距離です。
Tensile Strength:凝集したParticleが反発する力の大きさです。
Viscosity:Velocityを拡散し、近接するParticleの動きを寄せて、動きを粘着質にします。
Vorticity Confinement:Vorticityを維持し、エネルギーが中和されないようにします。
Use OpenCL:シミュレーションの際に、OpenCLを使用します。環境にもよりますが、シミュレーションが高速になる可能性が高いです。


  • 「Houdini COOKBOOK +ACADEMY」
    Houdiniを基礎から楽しく学ぶオンライン講座

    公開日程:毎週金曜日公開(予定)
    価格:1,200円(税込)
    ※第一回「Houdiniの基本概念とインターフェイス」は無料公開中
    受講対象:Houdiniをこれから学びたい方、Houdiniの勉強で挫折した方など
    cgworld.jp/special/houdinicookbookacademy

その他の連載