Lerp&Slerp(线性插值与球型线性插值)

解决问题(1.模型转身没有缓动 2.从走路到跑步没有缓动)
⭐1.if (pi.Dmag > 0.1f)//增加判断 如果按键时间大于0.1秒那么就不转回到前面 { Vector3 targetForward = Vector3.Slerp(model.transform.forward, pi.Dvec, 0.3f);//转身缓动 使模型在一个球面上旋转 model.transform.forward = targetForward; }
2.float targetRunMulti = ((pi.run) ? 2.0f : 1.0f);//走路到跑步切换加入缓动 anim.SetFloat("forward", pi.Dmag*Mathf.Lerp(anim.GetFloat("forward"),targetRunMulti,0.5f));//把Dup的值喂给Animator里面的forwad

猜你喜欢

转载自blog.csdn.net/weixin_44025382/article/details/84946151