On this page |
概要 ¶
このシェルフツールは、地面の衝撃波を伴う中規模サイズの爆発のSparse Pyroシミュレーションをセットアップします。
Simple Fireballシェルフツールと同様に、この爆発は、起爆とそれに伴った火の玉の上昇で構成されています。
十分な量の反応物(Emissionのflame
フィールドに相当)が残っている限り、火の玉は次々と煤煙(すす)と熱を放出して、膨張を続けます。
これらの様々な出力と火の玉が燃え尽きるのにかかる時間は、Pyro Solverの Flames タブのパラメータで制御します。
この衝撃波は、起爆後に少し遅れて始まり、その爆発の中心から放射状に広がり、そして何も反応物(Emissionのflame
フィールドに相当)のソースを持ちません。
この衝撃波は煙/埃と見なされているので、density
とtemperature
のみがソースになっています。
Shockwaveを理解する ¶
このシェルフツールは、以下の3つのコンポーネントで構成されたノードネットワークを作成します。
-
fireball/pyroburstsource
ノードチェーンは、density
、temperature
、burn
、velocity
のソースをセットアップしています。このburn
はPyroのflame
フィールド(利用可能な反応物を更新するためのフィールド)とdivergence
フィールド(初期の外側への膨張を引き起こすフィールド)にマージしています。To... Do this ソース値のレートをアニメーションあせる
Pyro Burst Sourceノードの Burst Components タブにある Scale Over Duration チェックボックスを有効にします。
これによって、爆発中のソース値に対するグローバル乗数を制御する Duration Ramp パラメータが現れます。
起爆のサイズを設定する
Pyro Burst Sourceノードの Initial Size パラメータまたは Outward Expansion パラメータを変更します。
Initial Size パラメータは、爆発の開始スケールを制御するのに対して、 Outward Expansion は爆発中の膨張に影響を与えます。
起爆の形状を変更する
Pyro Burst Sourceノードの Burst Shape タブにある Shape Offset パラメータを変更します。
このパラメータは、ランダム形状のシードとして作用します。 形状をもっと劇的に変更したいのであれば、 Burst Shape タブにある他のパラメータ( Spread Angle 、 Roundness 、 Number of Trailings など)の値を調整すると良いでしょう。
-
pyroburstsource_ground_shockwave
は、衝撃波の初期形状、density
ソース、temperature
ソースをセットアップしています。衝撃波は埃と煙で構成されているのでflame
をソースにしていません。To... Do this 衝撃波の膨張サイズを変更する
Pyro Burst Sourceノードの Burst Animation タブにある Interior Expansion パラメータと Exterior Expansion パラメータを変更します。
衝撃波の形状を変更する
Pyro Burst Sourceノードの Burst Shape タブにある Add Shape Noise チェックボックスを有効にします。 これによって、膨張する衝撃波は数学的に円形な形状からもっと不完全で自然な形状に変化します。
-
adjust_shockwave_velocities
を使用して、衝撃波のVelocityソースをもっと細かく調整しています。Velocityソースは、目的の衝撃波のルックを定義する上で重要な部分です。 -
fireball_simulation
には、これらのソースを消費して流体シミュレーションを実行するシミュレーションネットワークが含まれています。 Sparse Pyro Solverのパラメータは、火の玉とその煙の動きと出現形状に対して最も影響力があります。To... Do this 上昇する火の玉の膨張率を設定する
Pyro Solverの Expansion Rate とそれに呼応する Flame Range を調整します。
これらのパラメータは、 Shape タブ内にある Flame Expansion 折り畳みメニュー内にあります。 Expansion Rate を上げる場合、予期しないほど大きな爆発にならないように Flame Range の最小値を上げる必要が出てきます。
火の玉が減衰する速さを変更する
Flame Lifespan パラメータを変更します。
このパラメータの値が大きいほど、
flame
フィールドがゆっくりと減って、もっと長く続く火の玉が生成されます。全体の上昇レートを変更する
Buoyancy Scale の値を試してください。
この値を上げると、上昇レートが上がります。逆も然り。
火の玉の上昇の 仕方 を制御する
火の玉の上昇の仕方は
temperature
フィールドで決まります。 このフィールドの進展は、 Cooling Rate パラメータと Fields タブの Temperature 折り畳みメニューにあるパラメータに依存します。 Cooling Rate が高いほど、もっと速く温度が失われ、シミュレーションは、上方向に動きを駆動させるためのflame
フィールドから出力されたtemperature
にもっと依存するようになります。煙の放出の仕方を指定する
Flames タブの Smoke 折り畳みメニュー内の Flame Range と Flame Ramp を調整します。
煙が消失する速さを制御する
Dissipation パラメータを調整します。
値が高いほど煙が速く消失し、小さいほど煙が長く滞留するようになります。
-
fireball/object_merge
ノードチェーンは、シミュレーションの結果をSOPジオメトリに返します。 Pyro Bake Volumeノードは、適切なビューポートの視覚化を設定し、レンダリングに一致するマテリアルを作成します。 このノードの中に入れば、Pyro Shaderのいくつかのパラメータを変更して以下の処理をすることができます。To... Do this density
に基づいて煙のカラーを変更する-
Smoke Color の隣にあるメニューを Constant から Use Ramp に変更します。
-
Density Range パラメータで、煙のカラーを制御するdensity値の範囲を設定します。
-
Smoke Color Ramp パラメータで、その Density Range に基づいて煙のカラーを変更します。
ボリューム内部での光の散乱の挙動に基づいて煙のカラーを変更する
Absorption Color を変更します。 よりリアルなルックの煙には、
0.425
(赤),0.36
(緑),0.3
(青)の値から始めると良いでしょう。他のボリュームを使って煙の密度をスケールさせる
-
Use Control Volume チェックボックスを有効にします。
-
Bindings タブの Density Control Volume に、その密度に影響を与えるのに使用したいフィールドを設定します。ここでの用途だと通常では
temperature
またはflame
を選択するのが良いでしょう。
-
Tips ¶
-
カラー表示の精度を上げたいのであれば、Academy Color Encoding System(ACES)を使用してください。 このセットアップの方法の詳細は、Pyroの章のシェーディングとレンダリングを参照してください。
-
ビューポートの視覚化を良くしたいのであればSpot Lightを追加し、レンダリングを良くしたいのであればカスタムHDRIマップを使ってEnvironment Lightを追加してください。
-
もう少しディテールを出したいのであれば、Pyro Bake Volumeの Quick Setups ドロップダウンメニューの Sharpen Volume オプションを使用すると
density
フィールドに少しシャープさが足されます。 -
Pyro Bake Volumeの Quick Setups ドロップダウンメニューから Create Lights/Cameras オプションを選択することで、ライトとカメラを使ってレンダリングできるように迅速にボリュームをセットアップすることができます。