Unity之IK(反向动力学)

IK

Inverse Kinematic即反向动力学,在骨骼动画中构建骨骼的方法被称为正向动力学。通常来说是父骨骼带动子骨骼旋转或移动,而反向动力学则是子骨骼带动父骨骼旋转或移动。
举个例子来说,正向动力学下,我们用手控制鼠标移动,反向动力学下则是鼠标控制我们的手移动。

二如何使用

首先需要在状态机中开启IK设置。
Unity已经定义了一个Ik回调函数——OnAnimatorIK,我们可以通过调用相关API来控制IK。

SetLookAtWeight     设置头部IK权重
参数
        1.weight:LookAt全局权重0~1
        2.bodyWeight:LookAt时身体的权重0~1
        3.headWeight:LookAt时头部的权重0~1
        4.eyesWeight:LookAt时眼镜的权重0~1
        5.clampWeight:0表示角色运动时不受限制,1表示角色完全固定无法执行LookAt,0.5表示只能够移动范围的一半
SetLookAtPosition   设置头部IK看向位置
参数
		位置
		
SetIKPositionWeight 设置IK位置权重
SetIKRotationWeight 设置IK旋转权重
SetIKPosition       设置IK对应的位置
SetIKRotation       设置IK对应的角度
参数
		1.AvatarIKGoal枚举    四肢末端IK枚举
		2.坐标或者四元数

猜你喜欢

转载自blog.csdn.net/winds_tide/article/details/128910871