====== Voidオブジェクトで流体を取り除く ====== ===== 概要 ===== {{ :chaosgroup:phoenixfdmaya:render_vortex_withvoid.png?350 |}} \\ このページでは、炎/煙のシミュレーションで流体の中身を消すためのVoidオブジェクトを追加する際のガイドです。 \\ \\ ===== 手順 ===== シミュレーションを開始します。この例では、煙の層を含むボリュームを作成します。潰した立方体をエミッタオブジェクトとしてCold Smoke クイックシミュレーションセットアップを使用します。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_coldsmoke.png |}} \\ \\ Simulatorの**Grid**を開き、**X / Y / Z**の**Size**を調整してよりコンパクトにしてください。エミッタオブジェクトは、シミュレーション開始時に密度の高い煙の層を作成する為にシミュレータのボリュームよりも大きくしてください。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_resizegrid.png?400 |}} \\ \\ **Grid Adaptation**で**Adaptive Grid**を**Disabled**にします。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_disableadaptivegrid.png |}} \\ \\ Fire Sourceを選択してください。**Emit Mode**を**Volume Brush**に設定します。Smokeのみを使用するので、Temperature(K)チャンネルを無効にしてください。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_fluiddischarge.png?600 |}} \\ \\ シミュレーション開始時に煙の層を作成するには、**Discharge**の値をアニメートする必要があります。4フレーム目で、値を95.0に設定します。値を右クリックしてキーの設定をします。5フレーム目では、値を0.0に設定します。これで、Simulatorはボリューム内を4フレームの間に煙で満たし、その後は煙の発生を停止します。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_animatedischarge.png?600 |}} \\ \\ **Dynamics**を開き、**Smoke Dissipation**を0.0に設定します。これにより、煙が時間の経過とともに消えてしまうのを防ぎます。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_smokedissipation.png?600 |}} \\ \\ シミュレーションを開始し、ビューポートをワイヤフレームモードに設定すると、ボリューム内は煙で満たされ、その後はそのままになります。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_smokelayer.png?600 |}} \\ \\ 次にvoidオブジェクトを作成します。まずシーン内にポリゴンの円柱を作成してください。スケールを調整し、Simulatorの中央に配置します。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_createcylinder.png?600 |}} \\ \\ 次に2つ目のFire Sourceをシェルフから作成します。これを円柱に接続するには、**[Edit Object Set]**ボタンをクリックして**リレーションシップエディタ**を起動します。左側でphxSource_set2を選択し、右側で作成した円柱を選択します。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_editobjectset.png?600 |}} \\ {{ :chaosgroup:phoenixfdmaya:voidobject_relationshipeditor.png?600 |}} \\ この円柱を通常のエミッタではなくVoidオブジェクトとして動作させるには、**Fluid Discharge**セクションに移動します。**Emit Mode**を**Volume Inject**に設定します。エミッタオブジェクト(円柱)を非ソリッドオブジェクトとして変換するかを聞かれます。ここでYesをクリックします。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_voiddischarge.png?600 |}} \\ {{ :chaosgroup:phoenixfdmaya:voidobject_converttononsolid.png?600 |}} \\ 次に、**Discharge**を負の値(-50.0など)に設定します。**Temperature(K)**と**Smoke**のチャンネルを無効にします。これにより、円柱はVoidオブジェクトとしてシミュレーターから流体を取り除くようになります。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_voiddischargesettings.png?600 |}} \\ \\ シミュレーションを開始すると円柱のVoidオブジェクトはSimulatorから煙を吸い込むように取り除きます。 \\ {{ :chaosgroup:phoenixfdmaya:blast11.mp4 |}} \\ またVoidオブジェクトを他のエフェクトと組み合わせて、より複雑なシミュレーションを作成することができます。以下ではMayaの渦(Vortex)フィールドを使用しています。Voidオブジェクト(円柱)は渦フィールドの下に配置しています。 \\ {{ :chaosgroup:phoenixfdmaya:voidobject_smokevortex_setup.png?600 |}} \\ Voidオブジェクトの有無で異なるシミュレーションの結果を以下に示します。 \\ \\ {{ :chaosgroup:phoenixfdmaya:voidobject_test_30_v_void.png?600 |}} \\ Voidオブジェクトと渦フィールド {{ :chaosgroup:phoenixfdmaya:voidobject_test_30_v.png?600 |}} \\ 渦フィールドのみ \\ 同じようにVoidオブジェクトとMayaフィールドを使用した作例が [[https://docs.chaosgroup.com/display/PHX3MAYA/Example+Scenes|Chaos Groupのページ]] にあります。 \\ \\ ===== ノート ===== 液体シミュレーションで同じ効果を表現をするには、**Extra Phoenix FD Attributes**でVoidオブジェクトを**Solid**にして、**Emit Mode**を**Surface Force**に設定します。