constrain_mpm使用此复合可在源几何体的 point_position 上创建约束,这些约束将在模拟过程中强制执行。约束是一种根据输入 mpm_source 几何体或 constraint_geometry 的动画运动强制某些点移动的方法。点约束到的位置称为目标位置。约束可以是硬约束,表示不允许出现偏差;也可以是软约束,表示充当运动导向(请参见 strength 输入)。注意:您也可以通过提供不移动的输入将源约束为保持静止。
mpm_source 输入应连接到 make_mpm_cloth 的 cloth_source 输出、make_mpm_fiber 的 fiber_source 输出或 make_shell_fiber 的 shell_source 输出。此复合的 out_mpm_source 输出应连接到 simulate_mpm 的 sources 输入。也可以在 make_mpm_cloth 和 simulate_mpm 之间链式连接多个 constrain_mpm 复合。在同一个点上应用冲突的约束时,最后一个添加的约束会覆盖上一个约束。
mpm_source约束将应用于附加的任意数量的 mpm_source。如果未提供 constraint_geometry,则将使用输入几何体的运动来设置目标位置。
constraint_geometryconstraint_geometry 输入的 bounds_shape 内的 mpm_source 输入几何体的任何点都将受到约束,以在 start_frame 与当前帧之间遵循 constraint_geometry 的相对变换。可以通过以下两种方式之一计算变换:
constraint_geometry 具有 float4x4 特性 transform,则将使用该特性。将按源的 start_frame 确定要约束的点,并且在模拟期间不会更新这些点。但是,在整个模拟过程中会更新其目标位置和强度。
enable_constraints是否应添加任何约束。
start_frame模拟的源几何体应开始受约束时的帧。
use_end_frame是否在 end_frame 之后取消激活约束。
end_frame模拟的源几何体将受约束的最后一帧(如果 use_end_frame 已启用)。
strength强度 0 相当于无约束,强度 1 相当于硬约束或绝对约束。小数值表示软约束 - 源的行为表现为像是使用静止长度为 0 的弹簧连接了它们。
use_color_set是否使用颜色集特性值来缩放约束的强度。
color_set_name输入 mpm_source 的几何体上的颜色集名称。您可以添加观察点以查看输入几何体上颜色集的名称和类型。对 Alpha、RGB 或 RGBA 通道着色以将颜色集映射到浮点。
bounds_shape是使用轴对齐边界框还是使用 constraint_geometry 输入的边界球体来确定哪些点应受到约束。