Houdini 19.5 Pyro

SOP Pyroのワークフロー: 火の玉

On this page

このチュートリアルは、レッスンシリーズの4個中の3つ目です。ここを進む前に、前のページを訪れてください:

  1. SOP Pyroのワークフロー: 煙

  2. SOP Pyroのワークフロー: 燃えるタイヤ

  3. SOP Pyroのワークフロー: 火の玉

これまでのレッスンでは、濃い煙雲から始めてそれを燃えるタイヤに変えました。 今回の目標は、ガソリンを火に注いだ時に見受けられるようなものと同様の火の玉を作成することです。 今回の手法はこれまでと異なり、使用するPyro Burst Sourceのノードでは、シードポイントに変換されるソースジオメトリを必要としません。 今回、シードはPyro Burst Sourceノードから直接生成されます。 このPyro Burst Sourceは、どんな種類の爆発エフェクトも作成できるように修正されたPyro Sourceノードです。

Pyro Burst Source

  1. obj レベルで、⇥ Tabキーを押してTABメニューを呼び出し、Geometry OBJノードを作成します。

  2. その新規ノードをダブルクリックして中に入ります。その中で、Pyro Burst Source SOPを追加します。ビューポートには、シードポイントで表現された概略的な爆発が表示されます。

  3. Burst Shape タブから始めて、その爆発を調整します。より多くの解像度を得るために、 Trailing ▸ Trailing Separation0.05に変更します。

  4. Trailing Length2に設定します。

  5. Burst Parameters タブを開き、 Start Frame10に設定します。

  6. 爆発の期間が長くなるように Frame Duration11まで上げます。

Burst Components ▸ Number of Sources を見ると、燃えるタイヤの作成のレッスンで既に見覚えのあるアトリビュートフィールドがあります: densitytemperatureburn。これまでのレッスンと同様に、これらのアトリビュートをラスター化する必要があります:

  1. Volume Rasterize Attributes SOPを追加して、その入力をPyro Burst Source SOPの出力に接続します。

  2. Attributes パラメータにdensity temperature burn(カンマ不要)と入力します。

  3. Filter タブの Voxel Size0.05に設定します。これは、Pyro Burst Source SOPの Trailing Separation 値と同じです。

  4. Volume Rasterize Attributes SOPの Display フラグを有効にして、ポイントをクラウド構造に変換します。

Pyro Solver

Pyro Solver SOPは、シミュレーションを実行します。

  1. Pyro Solver SOPを追加して、その1番目の入力をVolume Rasterize Attributes SOPの出力に接続します。

  2. Setup ▸ Voxel Size0.05に設定します。

  3. Fields ▸ Dissipation(消散)0.04まで下げます。

Shape タブに切り替えます:

  1. Buoyancy(浮力)0.7に変更します。

  2. Disturbance(擾乱) を有効にして、20と入力します。

  3. Turbulence(乱流) を有効にして、0.3と入力します。

  4. Shredding(細断) を有効にして、0.2と入力します。

プレイバー内のアイコンをクリックしてシミュレーションを開始します。 関連アトリビュートすべてがアクティブになっているものの、そこには炎も炎から煙への遷移もありません。 煙雲の形状は35~40フレーム後にそれ以上ほとんど変化しません。

フィールドの初期化

煙のシーンや燃えるタイヤのシーンとは異なり、Pyro Burst Source SOPからのポイントはVelocityを出しません。これを手動で行なう必要があります。

  1. Volume Rasterize Attributes SOPの Attributes のリストにvを追加します。

  2. 炎が得られるように、 Coverage ▸ Coverage Attribute に進み、そのリストからdensity除外 します。これですべてのフィールドが初期化され、煙雲に足りていなかった炎の外観が表示されます。

以下の動画では、その結果を示しています。今では爆破が起こり、炎は煙に変わるようになりましたが、その爆発は非常に短くて小さく、炎はすぐに消えます。

爆発のサイズと形状を制御する

Pyro Burst Source SOPには、ポイント用の入力が備わっています。 Pyro Source SOPと同様に、その入力にオブジェクトを接続することで、煙の形を決めることができます。 Pyro Burst Source SOPは繋がったジオメトリのすべてのポイントからソースポイントを生成するので、ソリッドオブジェクトや高解像度オブジェクトを接続する時は注意してください。 そのため、膨大な数の煙シードが発生する可能性があります。

  1. Circle SOPを追加し、その出力をPyro Burst Source SOPの入力に接続します。

  2. Orientation ドロップダウンメニューから ZX Plane を選択します。

  3. Uniform Scale1.5まで上げます。

  4. ポイントを増やすために、 Divisions20に設定します。

これで火の玉の外観が良くなりましたが、典型的な渦巻く挙動が見受けられません。 シミュレーションに“Swirl(渦巻き)”を追加するために、Volume Rasterize Attributes SOPとPyro Solver SOPの間にVolume Velocity SOPを挿入します。

  1. Curl Noise タブを開きます。

  2. Add Curl Noise を有効にします。

  3. Scale1.5に変更します。

火と炎を強化する

燃える炎のシミュレーションチュートリアルでは、Attribute Noise SOPのおかげでランダムさを追加することができました。ここでは、そのAttribute Noise SOPを追加して、burnアトリビュート値をランダムにして多くの火を生成します。

このノードを使用すると、火の玉は長く続いた後に煙に変わります。 クリップの最後のほうで白熱する構造にも注目してください。この構造は、消えるガス状の残留物の燃焼を表現しています。

以下の動画では、 Particle Trailing パラメータと Voxel Size パラメータをどれも0.03に設定しています。煙のカラーと炎の強さも少し調整してディテールを上げています:

Pyro

Sparse(疎)Pyro

Pyroインスタンス

レガシーPyro