Houdini 20.0 Pyro

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

On this page

このセットアップは、SOPベースのPyroシミュレーション向けチュートリアルシリーズの3個中の2つ目です。 ここを進む前に、以下の1つ目のレッスンを受けてください。

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

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

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

Note

このシーンは、SOP Pyroのワークフロー: 煙チュートリアルのネットワークに基づいています。 以前に保存したバージョンのネットワークをロードするか、または、手動でそれらのノードを再現しても良いでしょう。

burnアトリビュート

以前のレッスンでは、立ち昇る煙を作成しましたが、炎のない煙でした。炎を作成するには、もう1つアトリビュートが必要です。

  1. Pyro Sourceノードを選択し、パラメータを確認します。現時点では、densityアトリビュートとtemperatureアトリビュートがあります。

  2. + ボタンをクリックして3つ目のアトリビュートを追加します。

  3. Attribute ドロップダウンメニューから Burn を選択します。

この新しいburnアトリビュートもラスター化する必要があります。

  1. Volume Rasterize Attributesノードを選択します。

  2. Attributes リストにburnを追加して完成です。

Pyro Solver SOPSourcing タブを開きます。 そこの Source 3: flame エントリーにはburnアトリビュートが Source Volume として使用されていることがわかります。 このソルバは、burnボリュームを使用してflameフィールドを作成します。 これはすべてソルバによって自動的に行なわれます。

炎の視覚化

Pyro Solverには、炎を視覚化するのに必要なものすべてが用意されています。 タイムライン内のボタンをクリックすると、シミュレーションが開始されます。 現時点では、その結果は基本的なところでは煙のカラーにしか違いがありません。 そのシミュレーションは典型的な煙の挙動を示しますが、既に炎から煙に移り変わっていることが確認できます。

その炎の見た目を調整したいのであれば、Pyro Solverの Look タブを開きます。そこで、 Fire オプションがデフォルトで有効になっています:

  1. Intensity Scale は、炎の明るさを定義します。この値を40に設定します。

  2. Fire Intensity Ramp は、ソース値をどのようにマッピングして強度を表現するのかを制御します。例えば、1番目のポイントを選択し、ランプのコントロールを展開し、そこの Value0.5に設定します。炎から煙への遷移領域内の火がもっと明るくなったことに気付きます。2番目のポイントの Value0.3に設定すると、新しく生成される炎の温度が低くなったように見えます。このようにして、高温と低温のゾーンを定義することができます。

もう1つ非常に重要なパラメータが Fields タブにあります。 Flame サブペインを展開して Flame Lifespan にアクセスします。 値を小さくすると、炎から煙への遷移が速くなります。 Look タブの Smoke ▸ Smoke Color パラメータと併用すれば、これは、“クリーンな”煙やら煤煙を出すオイルやらゴムが燃えたような煙といった色々なタイプの炎をシミュレーションするのに非常に効果的な方法になります。

以下の動画は、暗い煙で Flame Lifespan1.3に設定した炎を示しています。

炎の作成

もっと炎っぽい見た目を作成するには、煙の典型的な噴煙とうねりの構造を取り除く必要があります。 この明快な方法は、ソルバの Shape タブにあるパラメータを調整することです:

  1. Disturbance(擾乱)30まで上げて、煙の噴煙を散らします。

  2. Shredding(細断) を有効にします。このノイズタイプはflameフィールドに対して作用し、流体の全体的な動きを変えることなく周波数の高い乱流を加えます。この値を0.6に設定します。

上記の新しい設定にすると、そのシミュレーションが炎のような見た目になり始めます。初期の着火と小規模なノイズがありますが、その炎がすぐさま消えることはありません:

  1. ソルバで、 Fields を開き、 Flame Lifespan0.65に変更します。非常に油分の多い炎を作成したいのであれば、 Flame Lifespan0.4とか0.3に変更します。

  2. もう1つ重要なパラメータは、ソルバの Fields タブにある Dissipation(消散) です。これは、煙が消える速さを制御します。良い値を見つけるには何回かテストが必要であり、小さい変更でも大きな影響を及ぼします。そのため、パラメータをちょっとずつ変えてください。このシミュレーションでは、 Dissipation0.085に設定します。

  3. シミュレーション開始時点で乱流が多すぎると感じた場合、 Shape タブに進んで、 Disturbance サブペインと Turbulence サブペインにある Roughness 値を約0.5まで下げてください。

以下の動画では、様々な変更の結果を示しています。

機能拡張

ネットワークには、temperatureアトリビュートにノイズを適用したAttribute Noise SOPが既に含まれています。 もう1つの手法は、シードポイントの位置を直接移動させて炎にちらつきを加えることです。 Attribute Noise SOPをもう1個追加して、それを最初のAttribute Noise SOPの後に接続します。 この2個目のAttribute Noise SOPは、煙に適度なうねり効果を再び取り入れて、炎によりランダムさを加えます。

  1. Attribute Names からCdエントリーを削除して、そこにPと入力します。

  2. Noise Value ▸ Amplitude0.25に設定します。この値はほどほどにしてください。そうしないとシミュレーションがまったく大きく変わります。

  3. Animate Noise を有効にします。

最後に、 Particle Separation パラメータと Voxel Size パラメータをどれも0.025に設定して、シードパーティクルを増やしてディテールを加えて解像度を上げます。

Pyro

Sparse(疎)Pyro

Pyroインスタンス

レガシーPyro