Lagoa Simulate Multiphysics(Lagoa 複数の物理特性のシミュレート)

 
 
 

Lagoa シミュレーションのシミュレータ ノードです。[Simulate Particles(パーティクルのシミュレート)]ノードや[[Simulate Rigid Bodies]ノード]ノードと同様に、空間および時間においてポイントを移動するために必要なすべてのものを計算します。

このノードでは、解決するプロパティをグローバルに有効にできるだけでなく、摩擦など、オブジェクトとの相互作用を制御したり、[Substeps]コントロールを使用してシミュレーションの品質を制御したりできます。

このノードは、[ICETree]ノードのポート、または[Simulation Root]ノードの[Simulate]ポートに接続します。

タスク: [Lagoa]/[Simulate]

出力ポート: [Execute]

解決(Solve)

シミュレーション ソルバのオン/オフを切り替えます。

フレーム指定によるプリ ロール(Pre Roll in Frames)

指定したフレームを使用して、シミュレーションでのポイントの初期状態を設定します。たとえば、流れ落ちる水のシミュレーションを作成する場合にフレーム 75 と入力すると、そのフレームのパーティクルは、エッジの向うに既に落下した状態になります。これは、シミュレーションの最初のフレームで使用されるパーティクルの状態です。

時間のステップ

サブステップ(Substeps)

シミュレーション全体の状態を計算するフレームごとの回数です。値を大きくするほどシミュレーションと衝突が安定し、正確になりますが、速度が遅くなります。

詳細については、精度を高めるためのシミュレーションのサブステップの設定を参照してください。

非弾性サブステップ(Inelastic Substeps)

シミュレーション ステップ([Substeps]値)ごとに非弾性ソルバが実行される回数です。

たとえば、[Inelastic Steps]で 2 を指定し、[Substeps]が 10 の場合、シミュレータは、フレームごとに非弾性プロパティを 20 回評価します。

値を大きくするほど非弾性ポイントの非圧縮性と精度(および硬さ)が高くなります。一般的に、非弾性ポイントを持つボリュームの損失が存在する場合、2 ~ 3 の値を指定することで、良好な視覚的精度が得られます。値 5 が必要になるのは、高解像度シミュレーションの場合だけです。

このオプションで考慮されるのは、マテリアル ノードの[Inelastic Collision]および[Inelastic Friction]パラメータの値だけです。

弾性サブステップ(Elastic Substeps)

シミュレーション ステップ([Substeps]値)ごとに弾性ソルバが実行される回数です。このオプションで考慮されるのは、マテリアル ノードの[Elastic Setting]パラメータの値だけです。

サブステップを追加することで、エレメントがどの程度デフォームされるのかをより正確に予測できるようになり、マテリアルの伸長や圧縮を低減することができます。

適切な値の範囲は 1 ~ 5 です。5 よりも大きい値を指定すると、視覚的な精度がうまく高まりません。

ソルバ設定

切り離しの許可(Allow Tearing)

ポイントの弾性ストラクチャの切り離しを許可します。ストラクチャが切り離しを行うポイントは、すべてのマテリアル コンパウンドの[弾性限界点](Elastic Breaking Point)などの[弾性](Elasticity)オプションによって決定されます(「Lagoa メイン マテリアル」を参照)。

可塑性の解決(Solve Plasticity)

弾性ストラクチャをプラスチック ストラクチャとして解決します。弾性ストラクチャは、一定量のデフォーメーションを行った後で、プラスチック デフォーメーションを行います。たとえば、ポイントが伸長しすぎた場合、そのポイントはオリジナルのシェイプに戻ろうとせずに、伸長したポーズを維持します。

シェイプの可塑性は正確に定義されるわけではなく、時間の経過とともに再構成できます。たとえば、ある弾性オブジェクトを別の弾性オブジェクトに投入すると、それらのオブジェクトは互いに跳ね返すのではなく、1 つのオブジェクトにマージされます。

弾性ストラクチャは、放出コンパウンドで[Cluster]オプションを使用することで、クラスタとして設定できます(「Lagoa Emit Volume(Lagoa ボリュームの放出)」を参照)。

内部フォースの許可(Allow Internal Forces)

パーティクル間で作用する内部フォースの計算を許可します。たとえば、エレメント内部のポイントペアの非弾性衝突は、最適化と安定性のため、計算されません。ただし、エレメントを不安定にさせる場合などは、内部フォースを計算できます。たとえば、2 つのポイントを落下させて圧縮し、さらに衝突もさせる場合は、このオプションをオンにする必要があります。

パーティクルの向きの設定(Orient Particles)

フォースと衝突に応じて、パーティクルの向きの変化を許可します。このような動作は、パーティクルのシェイプが立方体や円錐、または転がり落ちる岩やブロックなどのインスタンス化されたジオメトリの場合に発生する衝突で多く見られます。

向きのモード(Orientation Mode)

向きの解決を、エレメントのストラクチャ情報([Structure])のみ、またはシミュレーション内のすべての周囲のエレメント([All Elements])に基づいて行います。

トポロジ データの作成(Build Topology Data)

[Lagoa_Topology]属性の情報を、フレーム([Lagoa_TopologyIndex]、[Lagoa_TopologyRemoved]、および[LagoaTopology_DirtyStates])ごとに更新します。

これらの属性は、外部メッシュ(ポリゴ ナイザーなど)に対して使用し、ポイント クラウドの Lagoa ジオメトリの説明を取得したり、動的に更新されるポリゴン メッシュを作成したりできます。

衝突

パッシブ ボディの入力名(Passive Body In Name)

ポイントが衝突する衝突オブジェクトまたは衝突オブジェクトのグループの[Out Name]ポートを接続します。このオブジェクトは、アニメート(デフォーメーションまたは変換)してもしなくても構いません。

シミュレーション環境では、パッシブ オブジェクトはどのようなタイプのフォースからの影響も受けません。

各衝突オブジェクトのプロパティは、それぞれの[Lagoa Set Collision Data(Lagoa 衝突データの設定)]コンパウンドで定義します。

衝突モデル(Collision Model)

評価中に境界と衝突を計算するために使用する方法です。

  • [なし](None): 衝突に対して、特別な計算を行いません。

  • [距離フィールド](Distance Field): ポイントから衝突オブジェクトまでの距離を計算し、それらの間で発生するすべての接触フォースを評価します。

衝突サイド(Collision Side)

衝突に使用する衝突オブジェクトのフェイスを指定します。プリファレンスは、衝突面の法線に与えられます。

  • [フロントフェイス](Front Face): 法線方向のオブジェクトの側面にポイントを維持しようとします。

  • [バックフェイス](Back Face): 法線が指す方向の逆側にポイントを維持しようとします。たとえば、チューブ内の水など、衝突オブジェクトの内側にポイントを維持する場合は、このオプションを選択します。

オフセット方法(Offset Method)

衝突オブジェクトからポイントをオフセットする方法を指定します。このオプションは、すべての衝突オブジェクトと相互作用するすべてのマテリアルで使用されているオフセットに影響します。

  • [オフセット距離](Offset Distance): [Offset Collision]パラメータ(以下で説明)のグローバル値を使用して、衝突オブジェクトのサーフェイスから離れた位置にポイントを配置します。

  • [エレメントサイズを使用](Use Element Size): ポイントのサイズだけを使用します。ポイントのサーフェイスは、衝突オブジェクトのサーフェイスと衝突します。

  • [エレメントサイズ+オフセット](Element Size + Offset): ポイントのサイズと[Offset Collision]パラメータの値を足したものを使用します。

  • [エレメントサイズ×2+オフセット](Element Size * 2 + Offset): ポイントのサイズの 2 倍と[Offset Collision]パラメータの値を足したものを使用します。

Collision Offset(衝突オフセット)(Offset Collision)

ポイントのサーフェイスから衝突オブジェクトのサーフェイスまでの距離(Softimage 単位)です。

マテリアルごとのポイントのオフセットは、マテリアル コンパウンドの[マテリアル衝突オフセット](Material Collision Offset)パラメータを使用して設定できます(「Lagoa メイン マテリアル」を参照)。これは、このオフセット値に加算されます。

Boundary Interaction(境界インタラクション)

静摩擦を有効(Enable Static Friction)

ポイントが衝突オブジェクトに接触したときに、そのポイントへの静摩擦フォースの適用を許可します。

ポイントは、[Offset Method](上記で説明)で指定された距離に到達すると、衝突オブジェクトと接触したものとみなされます。

静摩擦とは、衝突オブジェクトとの関連でポイントが静止状態になるまでに受け取る摩擦量です。ポイントは、サーフェイスと接触すると、安定状態になろうとします。

ポイントに適用される静摩擦フォースは、[Lagoa Set Collision Data(Lagoa 衝突データの設定)]ノードの衝突オブジェクトの[静摩擦](Static Friction)値、および[Material]ノードのポイントの[サーフェイス摩擦](Surface Friction)値の合計です(「Lagoa メイン マテリアル」を参照)。

ボディ インパルスを有効(Enable Body Impulse)

移動する衝突オブジェクトとポイントが互いに接触したときに、衝突オブジェクトからポイントへの速度(ボディのインパルス)の転送を許可します。

このオプションでは、各衝突オブジェクトの[Lagoa Set Collision Data(Lagoa 衝突データの設定)]コンパウンドの[Body Impulse]パラメータの値が使用されます。

スリップなしを有効(Enable No Slip)

ポイントと衝突オブジェクトの相対モーションに応じて、ポイントが衝突オブジェクトにとどまることを許可します。

このオプションでは、各衝突オブジェクトの[Lagoa Set Collision Data(Lagoa 衝突データの設定)]コンパウンドの[No Slip]パラメータの値が使用されます。

Soft Repulsion(ソフトな跳ね返し)

ソフトな跳ね返しを有効(Enable Soft Repulsion)

ポイントと衝突オブジェクト間の跳ね返し、または引き付けの解決を許可します。跳ね返し力の強さは、[Lagoa Set Collision Data(Lagoa 衝突データの設定)]コンパウンドの[ソフトな跳ね返し](Soft Repulsion)パラメータで設定できます。

ソフトな跳ね返しを表示(Display Soft Repulsion)

ポイントを引き付けるソフトな跳ね返しのベクトルを表示します。これは、ソフトな跳ね返しフォースのエフェクトをデバッグする場合に役立てることができます。

Optimization and Debug(最適化とデバッグ)

最適化(Optimize)

重視する項目([精度](Accuracy)または[速度](Speed))に従って、シミュレーションの解決を最適化します。

この最適化処理は、[Substeps]の値が 1 よりも大きい場合に効果的です。

[Speed]を選択した場合、ソルバの動作は一部の属性の計算に限定され、ステップごとに 1 回実行されます。これは高速に移動するエレメントが不安定になる原因や、圧力カーネルが不正に解決される原因となる場合があります。シミュレーションは安定しますが、スキップされるサブフレーム データが存在するため、精度が低下します。

圧力を有効(Enable Pressure)

各マテリアル コンパウンドの[圧力設定](Pressure Settings)グループのパラメータを使用して設定された、要素の圧力の解決を許可します。(「Lagoa メイン マテリアル」を参照)

密度を有効(Enable Density)

エレメントのポイントの密度の解決を許可します。

弾性を有効(Enable Elastics)

各マテリアル コンパウンドの[弾性設定](Elasticity Settings)パラメータを使用して設定された、要素の弾性の解決を許可します。(「Lagoa メイン マテリアル」を参照)。

Enable Inelastics(非弾性を有効)

各マテリアル コンパウンドの[非弾性設定](Inelastic Settings)パラメータを使用して設定された、要素の非弾力性の解決を許可します。(「Lagoa メイン マテリアル」を参照)。

Enable Viscosity(粘性を有効)

各マテリアル コンパウンドの[粘度設定](Viscosity Settings)パラメータを使用して設定された、要素の粘度の解決を許可します。(「Lagoa メイン マテリアル」を参照)。

[Enable Plastic Flow(プラスチック流を有効)]

各マテリアル コンパウンドの[プラスティック フロー](Plastic Flow)パラメータを使用して設定された、要素の可塑性の解決を許可します。(「Lagoa メイン マテリアル」を参照)。

[Enable Custom Elastic Range(カスタム弾性範囲を有効)]

各マテリアル コンパウンドで設定された[カスタム弾性範囲](Custom Elastic Range)パラメータの解決を許可します(「Lagoa メイン マテリアル」を参照)。

デバッグ

ストラクチャの表示(Display Structure)

ストラクチャとはポイントのネットワークであり、エレメントを位相的に表したものです。ストラクチャは、切り離しや可塑的な再構築など、シミュレーション中に変更することができます。対角線および平行のリンクは、弾性フォースによって使用されます。

ストラクチャを表示することで、弾性を使用するシミュレーションをプレビューすることができるため、ポイント間のリンクが弾性フォースや境界に対してどのように反応するのかを確認できます。

たとえば、クロスなどの伸縮性や弾力性があるマテリアルの問題をデバッグしたり、ポイント クラウドがポリゴン メッシュに変化する前に、ストラクチャがどのように切り離されるのかをプレビューするのに役立てることができます。

境界での弾性の表示(Display Elastic at Boundaries)

ポイントと衝突オブジェクトの間で確立された弾性リンクを表示します。これは、ポイントが衝突オブジェクトにくっついているときなどに、確立されている弾性接続をデバッグするのに役立ちます。ポイントが衝突オブジェクトに接続されている場所、および弾性リンクのサイズを確認できます。

弾性リンクは、その[Lagoa Set Collision Data(Lagoa 衝突データの設定)]コンパウンドの各衝突オブジェクトに対して定義されます。

位置サブステップの表示(Display Position Substeps)

各フレームの期間における移動に伴う各ポイントの位置を、サブステップ値に従って表示します。これにより、各ポイントのトレイル エフェクトのタイプが表示されます。このオプションは、各ポイントが高速で移動する場合や急に方向を変更する場合に、その軌道をトレースするのに便利です。

速度サブステップの表示(Display Velocity Substeps)

ポイントの速度ベクトルを表示することを除き、上記の[Display Position Substeps]と同じです。

サブステップの蓄積(Accumulate Substeps)

フレームごとのサブステップの履歴を蓄積します。このオプションがオンの場合、シミュレーション時間全体で、ポイントの軌道をトレースできます。

このオプションがオフの場合、サブステップは、現在のフレームについてのみ表示されます。

実行ポート

サブステップの開始時に実行(Execute Start Substep)

サブステップの開始時に、このマルチ入力ポートに接続されたノードを実行します。

たとえば、一部の特定のデータを各サブステップで格納し、前のステップのデータと比較することができます。ノードは、実行順に上から下に接続してください。

サブステップの終了時に実行(Execute End Substep)

サブステップの終了時に、このマルチ入力ポートに接続されたノードを実行します。