シミュレーションとエフェクトの新機能

BOSS: Bifröst 海洋シミュレーション システム

Bifröst 海洋シミュレーション システムを使用すると、波、波紋、および航跡を用いてリアルな海面を作成できます。フラットなメッシュから開始して、その上にソルバとインフルエンスをレイヤ化および混合します。各要素は他の解像度に依存しないため、個別にキャッシュして高速再生することができます。結果の変形したメッシュを直接使用したり、別のメッシュに結果を転送することができます。また、レンダリング時に、このキャッシュされた EXR ファイルをベクトル ディスプレイスメント マップとして使用できます。

詳細については、「BOSS: Bifröst 海洋シミュレーション システム」を参照してください。

Bifröst の全般的な改善

モーション フィールド

Bifröst オブジェクトを選択して、Bifrost > (追加)モーション フィールド(Bifrost > (Add) Motion Field)を選択することで、パーティクルの速度を直接調整できるようになりました。以下のことができるようになりました。
  • ドラッグ(Drag)乱気流(Turbulence)のような、さまざまなコンポーネントを個別にアクティブ化およびコントロールします。
  • 空間のフィールド プロパティを変換します。フィールドのスケールは、既定でそのマグニチュードに影響することに注意してください。
  • 境界シェイプ(Boundary Shape)を選択し、オプションの減衰を使用して特定のボリュームへのエフェクトを制限する、または軸に沿って(Along Axis)軸の周り(Around Axis)、および軸から遠ざかる(Away From Axis)オプションに使用する軸を単に変更します。

詳細については、「Bifröst モーション フィールドを使用して速度をコントロールする」を参照してください。

キル フィールド

Bifröst シミュレーションでキル フィールドを使用して、不要な液体パーティクル、泡パーティクル、または Aero パーティクルを削除します。該当するオプションを使用して、パーティクルが特定のボリューム内にある場合に、特定の基準に基づいてパーティクルに影響を与えることができます。詳細については、キル フィールドを使用してパーティクルを削除するを参照してください。

メッシュのプロパティ

エミッタまたはコライダとしてなど、シミュレーションにメッシュを追加するときに、Bifröst アトリビュート グループがメッシュのシェイプ ノードに追加されなくなりました。代わりに、複数のメッシュで同じ設定を使用する場合に共有することが可能な新しいノードが追加されました。これらの新しいノードが、シーン グラフの AttrNotif ノードと置き換わっています。

エミッタやコライダなどのシミュレーションに追加できるメッシュ タイプごとに特定の Bifröst プロパティ タイプがあります。各プロパティ タイプに固有のアトリビュートに加えて、メッシュとインプリシット シェイプの交点に対するエフェクトを制限するには、境界コントロールを使用します。ボクセル スケール係数を指定することもできるので、たとえば、異なるコライダに異なるボクセル スケールを使用することができます。

シミュレーションにオブジェクトを追加するときに、既存のプロパティを共有するかどうかを選択できます。

  • 共有されていないプロパティを持つメッシュを新しく追加するには、今まで通りの方法でメッシュと Bifrost 流体オブジェクトの両方を選択し、対応するコマンドを Bifröst > 追加(Bifröst > Add)メニューから選択します。
  • メッシュを追加して既存のプロパティを共有するには、メッシュとプロパティの両方を選択し、対応するコマンドを Bifröst > 追加(Bifröst > Add)メニューから選択します。

または、ノード エディタ(Node Editor)でメッシュ シェイプのワールド メッシュ(World Mesh)出力をいずれかの Bifröst メッシュ プロパティの利用可能なメッシュ(Meshes)入力に接続することでもプロパティを共有できます。

コライダ付近の解像度

コライダの近くの流体を洗練(Refine Nearby Fluids)は、コンテナで空間適応性(Spatial Adaptivity)が有効になっているときにコライダの近くにある領域で流体解像度が粗くなることを防ぎます。プールの底や側面などの必要とされるディテールが少ない箇所ではこのオプションをオフにし、完全なディテールが必要なコライダではオンにします。常にフル解像度が使用されるフリー サーフェス(大気の境界)には影響しません。

Bifröst ノード構造に対する更新

Bifröst 流体を作成すると、bifrostLiquidContainer および liquidShape ノードに加えて bifrostLiquidPropertiesContainer ノードが生成されるようになりました。bifrostLiquidPropertiesContainer ノードで利用できるアトリビュートは液体のプロパティをコントロールし、bifrostLiquidContainer ノードにはシミュレーションのグローバル コントロールが含まれています。同様に、気体シミュレーションを作成すると、bifrostAeroPropertiesContainer ノードおよび bifrostAeroContainer ノードが作成されます。

液体に泡を追加すると、泡(Foam)アトリビュートに bifrostFoamPropertiesContainer が生成されるようになりました。泡(Foam)アトリビュートは bifrostLiquidContainer ノードに追加されなくなりました。

それぞれのコンテナとプロパティ ノードに評価タイプ(Evaluation Type)アトリビュートがあり、このアトリビュートは既定値のままにする必要があります。

キャッシュ ファイルの管理

新しい Bifröst キャッシュ ファイル構造により、特に複数の Bifröst コンテナを含むシーンをキャッシュする場合に、キャッシュ ファイルの検索と特定が容易になりました。Bifröst シミュレーションをキャッシュするときに、既定の Maya プロジェクト ルールは次のキャッシュ ファイル構造を作成します。

cache/bifrost/<シーン名>/<コンテナ名>/<オブジェクト名>

その他の Bifröst の改善

  • Bifröst シミュレーションの移動、回転、またはスケールを行うと、その結果がワールド空間でトランスフォームされます。これは、他の要素を使用する新しいシーンにキャッシュをロードする場合に特に便利です。ただし、エミッタ、コライダ、およびその他の入力オブジェクトとシミュレーションの位置合わせを保つには、トランスフォームを行わないようにします。

  • シミュレーション設定または入力オブジェクトが修正されたときに、スクラッチ キャッシュされたフレームが暗い緑()で表示されるようになりました。キャッシュされたフレームは、シミュレーションの最初のフレームに戻ったときに自動的にフラッシュされます。

  • ベクトルとしてチャネル値を表示するときに、ベクトルの長さをスケールできるようになりました。

  • Bifrost > Bifrost HUD を表示(Bifrost > Display Bifrost HUD)で、パーティクルとボクセルの数だけでなく、フレームごとの時間ステップ数が示されるようになりました。

Bifröst 液体の改善

ガイド付き液体シミュレーション

ガイド付き液体シミュレーションが設定しやすくなりました。エミッタとして変形する閉じたボリュームを使用する代わりに、単純に変形平面やその他の平らなメッシュをガイドとして使用できるようになりました。さらに、シミュレーションを特定の領域に制限したり、追加のスプラッシュ用ガイドの上部レイヤをシミュレーションすることができます。詳細については、メッシュを使用して Bifröst 液体をガイドするを参照してください。

粘度(Viscosity)

bifrostLiquidPropertiesContainer ノードの粘度に物理的に正確な値を設定できます。物理的に正確でないスケール(Scale)設定も、正確さが必要でない状況で結果の生成速度を上げるための速度スムージング係数として引き続き使用できます。

Bifröst の粘度アトリビュート」を参照してください。

液体のかくはんおよび曲率のチャネル

新しい曲率とかくはんのチャネルでは、液体のどこで曲率とかくはんが生成されているかを確認できます。有効にされている場合、Bifröst が曲率とかくはんの値を計算します。この値はビューポートでカラー チャネルとして表示できます。この方法で、泡オブジェクトを追加する前に、液体中の泡の放出の潜在的な位置を視覚化できます。また、シミュレーション前に泡の正確な液体の最小かくはん(Min Liquid Churn)値および液体の最小曲率(Min Liquid Curvature)値を判断するためにこの情報を使用することもできます。

bifrostLiquidPropertyContainer ノードアトリビュート エディタ(Attribute Editor)オプション チャネル(Optional Channels)アトリビュート セクションで曲率有効(Curvature Enable)およびかくはん有効(Churn Enable)にアクセスします。液体シミュレーションに泡パーティクルが含まれていない場合、不必要な計算を避けるためにこれらのオプションをオフのままにします。

浸食

新しい浸食(Erosion)アトリビュートは、液体の境界がシュリンクラップしてどれだけ近くパーティクルの位置に戻るかをコントロールします。これらのアトリビュートを使用して、静止した水に対する弱い流れや、激しい水しぶきなどのさまざまな状況で問題を回避します。

乱流の液体で、これらのアトリビュートを使用して、ボートの船首波の前で「波に乗る」高速なパーティクルや、コライダの壁の付近での液体の反発、パーティクル クランピング、よじ登りなどの問題を回避します。浸食(Erosion)の設定は、静止した水の平衡状態を実現することにも役立ちます。

Bifröst 浸食(Erosion)アトリビュート」を参照してください。

Bifröst Aero の改善

消失と風

消失率(Dissipation Rate)アトリビュートを使用することで煙チャネルの消失をコントロールし、蒸発のようなエフェクトを再現できます。さらに、風 X(Wind X)風 Y(Wind Y)風 Z(Wind Z)風のマグニチュード(Wind Magnitude)アトリビュートと、速度のランダム化(Randomize Velocity)を使用した模倣の乱気流を使用することで、Aero シミュレーションでの風速とそのエフェクトの強さをコントロールできます。詳細については、Bifröst 大気(Air)アトリビュート(Aero のみ)を参照してください。

滑らかな Aero ボクセル レンダリング

オプションのフロー ノイズを削減(Reduce Flow Noise)は、Aero ボクセル レンダリングの平滑性を増します。煙が大きな空間領域に広がり、パーティクル サンプリングが不十分になった場合に、最も効果があります。

  1. フロー ノイズを削減(Reduce Flow Noise)がオフ。
  2. フロー ノイズを削減(Reduce Flow Noise)がオン。

詳細については、「Bifröst パーティクル密度(Particle Density)アトリビュート」を参照してください。

煙チャネルをプレビューする

Aero シミュレーションで煙チャネルを視覚化できるようになりました。aeroShape ノードアトリビュート エディタ(Attribute Editor)で、カラー チャネル(Color Channel)リストの煙(Smoke)を選択して煙をカラー ランプとして表示します。

Bifröst 泡の改善

新しい Bifröst 泡(Foam)アトリビュート

新しい Bifröst 泡アトリビュートにより、泡シミュレーションでより細かなコントロールができるようになり、精度が増します。この新しいアトリビュートでは次のことができます。

  • オーバーラップの削減(Overlap Pruning)を使用するとオーバーラップするパーティクルを抑止できるため、放出率または泡密度を減らすことなく過剰な泡パーティクル数を減らすのに役立ちます。
  • 液体サーフェスの上に放出する泡パーティクルに空気抵抗(Air Drag)を適用することで、スプレーの外観をエミュレートします。
  • 表面張力(Surface Tension)を追加するか、新しい SPH ベースの圧縮モデル(Compression Model)を使用することで小さなスケールの液体シミュレーションの泡にディテールとリアルさを追加します。
  • foamShape ノードのレンダー パーティクル サイズ(Render Particle Size)アトリビュートを使用して、レンダリングされる泡パーティクルのサイズをコントロールします。

泡の放出をマスキングする

泡のマスク(Foam Mask)を使用して、ポリゴン オブジェクトのボリュームに泡の放出を制限できます。これにより、泡パーティクルを生成する液体の領域をより詳細にコントロールできます。たとえば、ボートの周囲とボートの航跡にマスキング オブジェクトを追加し、泡が液体のこの領域でのみ生成されるようにします。

泡のマスク(Foam Mask)アトリビュートは、マスキング ポリゴン オブジェクトのシェイプ ノードに追加されています。このアトリビュートを使用して、マスクのオンとオフを切り替え、ボクセル化の厚み(Thickness)モード(Mode)を設定します。

bifrostFoamPropertiesContainer ノードのマスクの減衰範囲(Mask Falloff Distance)アトリビュートでは、減衰領域をボクセル単位で設定し、入力メッシュの周囲の境界がくっきりとならないようにすることができます。

Bifröst 泡の放出をマスクする」を参照してください。

その他の泡の改善

Bifröst Killplane で泡パーティクルが削除されるようになりました。