IK动画直接we位置的匹配。
寻找定位点
勾选层中的IK pass
//每帧都运行
private void OnAnimatorIK(int layerIndex)
{
if (layerIndex == 1)
{
int houldLogWeight=anim.GetBool(isHoldLogID)?1:0;
//当前是被holdlog这一层调用的
anim.SetIKPosition(AvatarIKGoal.LeftHand, leftHand.position);
anim.SetIKPositionWeight(AvatarIKGoal.LeftHand, houldLogWeight);
anim.SetIKRotation(AvatarIKGoal.LeftHand, leftHand.rotation);
anim.SetIKRotationWeight(AvatarIKGoal.LeftHand, houldLogWeight);
//设置右手
anim.SetIKPosition(AvatarIKGoal.RightHand, rightHand.position);
anim.SetIKPositionWeight(AvatarIKGoal.RightHand, houldLogWeight);
anim.SetIKRotation(AvatarIKGoal.RightHand, rightHand.rotation);
anim.SetIKRotationWeight(AvatarIKGoal.RightHand, houldLogWeight);
}
}