simulate_mpmBifrost 中材质点方法 (MPM) 的主复合。可以使用此项来模拟各种各样的物理材质,包括沙子、雪、流体、布料和纤维。
要使用此复合,请插入一个或多个 sources(选自各种 source_mpm 和 make_mpm 节点),并将一个 mpm_solver_settings 节点插入到 settings 端口中。
材质点方法的工作方式是跟踪粒子的各种物理特性(对粒子进行体素化,以在某个瞬间获取材质的体积表示)。先计算体积的瞬时运动,使其与任何 colliders 碰撞,然后使用其来移动粒子,并更新其特性。在单个帧中多次重复执行此过程,其中每次迭代称为一个时间步。由于运动是基于体素化表示计算得出的,因此单个粒子的运动将被限制在体积表示的范围内。这意味着粒子不是根据其各自的速度移动,而是根据体积的平均速度移动。
sources一个或多个来自 source_mpm_snow、source_mpm_sand、source_mpm_fluid、make_mpm_cloth 或 make_mpm_fibers 的输出。source_mpm 节点播种粒子并生成 granular_particles 输出,make_mpm_cloth 生成 cloth_mesh 输出,make_mpm_fibers 生成 fiber_strands 输出。
colliders零个或多个来自 collider 节点的输出,用于阻止粒子流动。
influences零个或多个来自 influence 节点的输出,用于添加力、更改特性、删除粒子等。
surface_material用于代理和最终输出的曲面颜色的材质。
displacement_material用于置换代理及最终输出布料和壳体的材质。
settingsmpm_solver_settings 节点的输出设置。
granular_particles从节点的 source_mpm 族创建的种子粒子。对于每个输入材质,数组中有一个对象。即,所有沙子粒子一起表示为一个对象,所有雪粒子一起表示为一个单独的对象,等等。使用 split_particles_by_material 可按材质将此输出分割为单个输出粒子。
cloth_mesh一个基于输入 make_mpm_cloth 的 cloth_mesh。
shell_mesh一个基于输入 make_mpm_shell 的 shell_mesh。
fiber_strands一个基于输入 make_mpm_fiber 的 cloth_mesh。