private void OnAnimatorIK(int layerIndex) //动画控制机修改IK骨骼位置方法
{
if(layerIndex == 0) // 判断当前动画层
{
if (isSword) //判断是否执行IK骨骼修改
{
anim.SetIKPosition(AvatarIKGoal.LeftHand, SwordLeftHandTran.position); //获取修改的位置设置修改的位置 ( AvatarIKGoal(设置需要修改的位置),设置需要修改到的点)
anim.SetIKPositionWeight(AvatarIKGoal.LeftHand, 1); //判断骨骼位置的权重,0-1;
anim.SetIKRotation(AvatarIKGoal.LeftHand, SwordLeftHandTran.rotation);//获取修改的位置的旋转值设置修改的位置的旋转值;
anim.SetIKRotationWeight(AvatarIKGoal.LeftHand, 1); //判断骨骼位置旋转的权重,0-1;
}
}
Unity 动画系统控制
最新推荐文章于 2022-05-03 17:15:28 发布