IK 约束

使用 HumanIK,可精细控制通过一组 IK 约束由反向运动学解算器生成的姿势。参见:

概述数据流中所述,在调用反向运动学解算器时,必须向其提供可为角色的每个关节定义 IK 目标点的 HIKEffectorSetStateHIKEffectorSetState 中的每个效应器还包含上面列出的 IK 约束的设置。这些约束为反向运动学解算器提供有关如何处理此效应器的其他说明。

将 IK 约束用于反向运动学

可以直接在通过调用 HumanIK API 中的函数向反向运动学解算器提供的 HIKEffectorSetState 中设置每个效应器的 IK 约束的值。

有关提供的函数列表,请参见反向运动学解算

将 IK 约束用于重定目标

调用 HumanIK 重定目标解算器时,所执行的最后一步是调用反向运动学解算器来执行 IK 过程以完成生成的位置。为了执行此操作,将在内部构建 HIKEffectorSetState,以将其提供给反向运动学解算器。

由于无法与此 HIKEffectorSetState 进行交互,因此无法直接设置其效应器的 Reach、Pull 和 Resist 值。而是为重定目标解算器提供角色肢体的 Reach、Pull 和 Resist 值,方法为:在目标角色的 HIKPropertySetState 中设置特定角色特性的值。重定目标解算器构建传递到反向运动学解算器的 HIKEffectorSetState 时,会从 HIKPropertySetState 检索这些值,并使用这些值在 HIKEffectorSetState 中设置 IK 约束值。

有关详细信息,请参见重定目标解算角色特性特定于重定目标的特性