public static float ExpoInOut(float from, float to, float time)
{
if ((time /= .5f) < 1f)
return Mathf.Lerp(from, to, .5f * Mathf.Pow(2f, 10f * (time - 1f)));
return Mathf.Lerp(from, to, .5f * (-Mathf.Pow(2f, -10f * --time) + 2f));
}
两种情况下的第一步都是从时间中减去1。
第二个值可以使该值重新保存下来,但是既然不再使用它了,没关系吗?第一个可以使用--time,第二个可以使用(time-1f),结果是一样的吗?
如果不保存,第一种方法甚至可能更好。
相关分类