首页 > 代码库 > Mecanim动画

Mecanim动画

1、基础

每一个动画都会依赖原始模型,

2、IK

1、在Animator窗口里勾选IK Pass

技术分享

2、关键代码

void OnAnimatorIK(int layerIndex)
{
    animator.SetIKPositionWeight(AvatarIKGoal.RightHand, 1f);//设置权重
animator.SetIKPosition(AvatarIKGoal.RightHand,
rightHand.transform.position);//设置右手IK的位置
}

权重值的范围在0~1,值越小,控制力就越弱,反之越强

例:当权重值为0.1,1时分别的效果情况如下

模型源动画:技术分享 

权重值为0.1时:技术分享

权重值为1时:技术分享

可以看出,当权重值为0.1时,和模型原动画差不多,基本上是无法控制模型的右手的,而权重值为1时,模型的右手基本上被牢牢的控制在IK所设置的位置上那了,即小球的位置那,完全上不受其他动画影响!

 

 

参考:http://wiki.ceeger.com/script:unityengine:classes:animator:animator?s[]=ik

        http://www.xuanyusong.com/archives/2264

Mecanim动画