simulate_mpm

Bifrost の Material Point Method (MPM)用のメイン コンパウンド。砂、雪、流体、クロス、繊維など、幅広い物理マテリアルをシミュレートする場合に使用できます。

(さまざまな sources ノードおよび source_mpm ノードから選択された) 1 つまたは複数の make_mpm でこのコンパウンド プラグインを使用するには、mpm_solver_settings ノードも settings ポートに接続します。

Material Point Method を使用するには、パーティクルのさまざまな物理プロパティを追跡します。これらのプロパティはボクセル化されているため、時間内にマテリアルのボリューム表現を瞬時に取得できます。 ボリュームの瞬間的なモーションが計算され、いずれかの colliders に衝突します。その後、パーティクルの移動に使用され、プロパティが更新されます。このプロセスは 1 つのフレームに複数回繰り返され、各反復が 1 つの時間ステップと呼ばれます。モーションはボクセル化表現に基づいて計算されるため、個々のパーティクルのモーションはボリュームが表現できる内容に制限されます。つまり、パーティクルが個々の速度に従って移動することはなく、ボリュームの平均速度に従って移動します。

入力

sources

source_mpm_snowsource_mpm_sandsource_mpm_fluidmake_mpm_cloth、または make_mpm_fibers からの 1 つまたは複数の出力。source_mpm ノードはパーティクルにシードを設定し、granular_particles 出力を生成します。make_mpm_clothcloth_mesh 出力を生成し、make_mpm_fibersfiber_strands 出力を生成します。

colliders

collider ノードからの 0 個以上の出力。パーティクルのフローをブロックするために使用されます。

influences

influence ノードからの 0 個以上の出力。フォースの追加、プロパティの変更、パーティクルの終了などを行うために使用されます。

settings

mpm_solver_settings ノードの出力の設定。

出力

granular_particles

source_mpm ノード ファミリーから作成されたシード設定済みのパーティクル。 入力マテリアルごとに、配列内にオブジェクトが 1 つ含まれます。つまり、すべての砂パーティクルが 1 つのオブジェクトに格納され、すべての雪オブジェクトが別のオブジェクトに格納されます。split_particles_by_material を使用すると、この出力をマテリアルごとに個別の出力パーティクルに分割できます。

volume

シミュレーション内のすべてのマテリアル用のボクセル化されたボリューム。 これには voxel_mass_density および voxel_velocity プロパティが含まれています。 通常は、他のシミュレーションに影響を与える場合に役立ちます。 サーフェスを仕上げる場合は、代わりにパーティクルからレベルセットを作成し、そこからメッシュを作成することをお勧めします。

cloth_mesh

入力 cloth_mesh あたり 1 つの make_mpm_cloth

fiber_strands

入力 cloth_mesh あたり 1 つの make_mpm_fiber

out_colliders

グラフ出力に接続して、衝突に使用するジオメトリを視覚化します。