Pull

Pull 允许关节移动角色骨骼中的其他关节链,以到达其目标位置。

 

例如,在左侧的图像中,绿色定位器表示与左腕部关节对应的效应器。

 

即使效应器的到达平移设置为最大值,角色的手臂太短也无法伸到效应器的位置。

 

对效应器另外应用一个 Pull 约束可使身体的其他关节链(在这种情况下,为脊椎、髋部,甚至可能是腿部)旋转和平移,这样手腕便可以到达其效应器的位置。

请务必注意,仅当应用于节点的到达平移为非零值时才应用 Pull。如果效应器的到达平移值为零,则不会考虑该效应器的 Pull 值。

Pull 优先级

反向运动学解算器尝试满足应用于定义角色目标姿势的所有效应器的 Pull 设置。但是,当所有 Pull 值无法完全满足时,该解算器会使用层次来确定不同关节链的优先级。在该层次中,髋部被认为是最重要的关节,应用于髋部的 Pull 值总是先得到满足。其他关节的优先级将根据这些关节距离角色骨骼中髋部的距离而定:即胸部的优先级高于肩部,而肩部的优先级高于肘部,等等。

HumanIK 使用的 Pull 优先级系统可通过以下规则进行概括:

除了利用上述的优先级系统,还有许多其他方法可以微调 HumanIK 拉力引擎来避免角色的身体出现失真变形。例如,可以设置角色特性,将髋部的位置限制在两脚之间,从而不会破坏重心。请参见角色特性常规特性