MCG 3 DOF 旋转弹簧控制器

MCG 3 DOF 旋转弹簧控制器是允许对象在限定范围内按所有三个轴绕“父”对象旋转的物理刚体约束。该对象仍有可能超出这些限制,但超过后,将应用转动弹簧力将对象推回限制范围内。

对象可能超出旋转限制的原因有多个。例如:

此控制器使用的模拟将根据上一帧的缓存更新每个帧。如果跳转到后一帧,则会自动计算居间帧。如果跳回到前一帧,则从第一帧重新计算模拟。为获得最佳结果,请确保“时间配置”对话框中的“实时”已禁用。

  1. 创建“父”对象,并将其移动到要受约束对象围绕其旋转的位置。如果要对受约束对象应用惯性力,则可为父对象设置动画。
  2. 创建“外壳”对象,然后将其移动并旋转到要受约束对象相对于父对象所处的初始姿势。仅考虑它在第一帧中的世界变换。
  3. 选择要约束的对象。
  4. 选择“动画”菜单 > “MCG 控制器” > “3 DOF 旋转弹簧控制器”
  5. 单击父对象。
  6. 单击外壳。
  7. 设置目标限制以及所需的任何其他设置。
  8. 播放或跳转到后一帧。
  9. 如果更改值或者移动父对象或外壳对象,则可能需要单击“重置模拟”。这将清除缓存并根据需要重新模拟至多达当前帧。

请注意,当力超出极限时,模拟可能会不精确。在这些情况下,可以使用 MAXScript 将隐藏的 StepsPerFrame 属性设置为大于 1 的值来提高精度,不过这会延长计算时间。

界面

对象参考
父对象
单击以选择要绕其旋转的对象。
外壳
单击以选择对象,用于定义受约束对象在第一帧的变换情况。
取消激活弹簧
启用和禁用控制器。
物理属性
质量
对象的质量。
重力
世界坐标系 Z 轴中的恒定加速度。
阻尼
逐步降低速度的因子。
反弹
恢复系数,即交互之后保留的动能比例。通常,值应介于 0.0 和 1.0 之间。值大于 1.0 会导致能量增加,不会进行物理校正,但可能会产生有趣的效果。
刚度
在对象超出限制时旋转弹簧应用的弹簧常量。
轴限制
对象每个局部轴的旋转上限和下限(度),超出限制则应用弹簧力。激活“使用轴限制”以将所有轴的范围设置为 0。