Quaternion.Lerp?Vector3.Lerp?...Lerp倒底实现什么效果?

noflyzone 的头像

llerp查了一下说是插值?什么是插值?插值起到什么作用或效果?我以为是起到平滑过渡的效果?可是我写了以下代码,效果是,物体一下就跳了过去,而不是慢慢的转过去?为什么呢,请高手给讲讲,谢谢

private Quaternion start=new Quaternion(0,0,0,0);
 private Quaternion end=new Quaternion(0,15,0,0);
void Update () {
transform.rotation =Quaternion.Lerp (start,end, 15f);
end.y=end.y+Time.deltaTime*15;
}
怎么一下子就跳到了?没有所谓的过渡效果?

 

 

评论

Member since:
9 十月 2010
Last activity:
1 周 2 天

你的时间值太大了。把15改成1。5

Member since:
27 六月 2010
Last activity:
1 年 24 周

Color, Vector3, Vector2, Quaternion等等这些基础数据类型都有插值(Lerp),而且Quaternion还有一个Slerp,可以解决大角度旋转时插值(Lerp)可能存在的问题。

from和to这两个参数都好理解,最后一个参数的取值范围应该是0-1, 例如0.5的时候,插值的结果是位于from和to正中间的数值。