simulate_mpmBifrost の Material Point Method (MPM)用のメイン コンパウンド。砂、雪、流体、クロス、繊維など、幅広い物理マテリアルをシミュレートする場合に使用できます。
(さまざまな sources ノードおよび source_mpm ノードから選択された) 1 つまたは複数の make_mpm でこのコンパウンド プラグインを使用するには、mpm_solver_settings ノードも settings ポートに接続します。
Material Point Method を使用するには、パーティクルのさまざまな物理プロパティを追跡します。これらのプロパティはボクセル化されているため、時間内にマテリアルのボリューム表現を瞬時に取得できます。 ボリュームの瞬間的なモーションが計算され、いずれかの colliders に衝突します。その後、パーティクルの移動に使用され、プロパティが更新されます。このプロセスは 1 つのフレームに複数回繰り返され、各反復が 1 つの時間ステップと呼ばれます。モーションはボクセル化表現に基づいて計算されるため、個々のパーティクルのモーションはボリュームが表現できる内容に制限されます。つまり、パーティクルが個々の速度に従って移動することはなく、ボリュームの平均速度に従って移動します。
sourcessource_mpm_snow、source_mpm_sand、source_mpm_fluid、make_mpm_cloth、または make_mpm_fibers からの 1 つまたは複数の出力。source_mpm ノードはパーティクルにシードを設定し、granular_particles 出力を生成します。make_mpm_cloth は cloth_mesh 出力を生成し、make_mpm_fibers は fiber_strands 出力を生成します。
colliderscollider ノードからの 0 個以上の出力。パーティクルのフローをブロックするために使用されます。
influencesinfluence ノードからの 0 個以上の出力。フォースの追加、プロパティの変更、パーティクルの終了などを行うために使用されます。
settingsmpm_solver_settings ノードの出力の設定。
granular_particlessource_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グラフ出力に接続して、衝突に使用するジオメトリを視覚化します。