可以创建“在曲面上滑动”(Slide on Surface)约束,以将头发曲线 CV 附加到目标曲面(例如 nCloth 或被动碰撞对象曲面),并允许受约束的曲线对象沿约束它的曲面移动或滑动。用户可以使用“在曲面上滑动”(Slide on Surface)约束代替碰撞,且在大多数情况下,其工作速度比碰撞快。例如,可以使用“在曲面上滑动”(Slide on Surface)约束使头发曲线受 Nucleus 对象约束,以便对象彼此吸引而不发生碰撞。
注:
- 如果对 nHair 对象使用“在曲面上滑动”(Slide on Surface)约束来代替碰撞,则请禁用 hairSystemShape 节点“属性编辑器”(Attribute Editor)选项卡中的“碰撞”(Collide)。否则,将同时计算碰撞和约束。
- 如果对 nHair 对象使用“在曲面上滑动”(Slide on Surface)约束来代替碰撞,则无法有效使用“碰撞层”(Collision Layers)来控制 Maya Nucleus 系统中可与受约束的头发曲线碰撞的成员。
创建 nHair“在曲面上滑动”(Slide on Surface)约束的步骤
- 在场景视图中,选择要约束的头发曲线 CV。请参见选择用于 nConstraint 的曲线组件。
- 在要使头发曲线组件受其约束的目标曲面上单击鼠标右键 ()。
目标曲面可以是 nCloth 或被动对象,也可以是非 Nucleus 多边形网格。
注:
如果选择的目标曲面是 nCloth 或被动碰撞对象,则创建约束后,该曲面将成为被动对象。
- 在 FX 菜单集中,选择。
选定的 nHair 曲线组件现在受选定目标曲面的约束,并且现在通过 dynamicConstraint 节点连接到了 nHair 系统的 Maya Nucleus 解算器。
dynamicConstraint 节点上的预设特性确定约束的类型(在这种情况下为“在曲面上滑动”(Slide on Surface)约束)及其行为方式。例如,可以使用以下属性设置创建“在曲面上滑动”(Slide on Surface)约束:
- “弹簧”(Spring)作为“约束方法”(Constraint Method)
- “对象到对象”(Object to Object)作为“约束关系”(Constraint Relation)
- “全部到第一个”(All to First)作为“组件关系”(Component Relation)
- “在最大距离内”(Within Max Distance)作为“连接方法”(Connection Method)
- “逐帧”(Per Frame)作为“连接更新”(Connection Update)
请参见 dynamicConstraintShape。