文章目录
- 输入
- 键盘
- started
- completed
- 速度的过渡
- f插值到
- 原理
- 如何使用插值实现速度的过渡。
输入
键盘
started
按下时触发,此时值为true
completed
松开时触发,此时值为false
速度的过渡
如果没有过渡,那么速度会很快直接到最大速度,我们希望速度到最大速度之间有一个过程。
f插值到
输出 current 和 target 的中间值。
插值是一个固定值,并不是一个随时间变换的值。
原理
相当于从current 到 target 分成了 delta time 份,然后从current 开始 加上 inter speed 份。
也就是 current + (target - current) / delta time * inter speed.
如何使用插值实现速度的过渡。
上文说过,插值是固定的,那么如何使速度逐渐逼近目标呢。
首先,插值是无法实现速度逐渐逼近目标的。
但可以实现最大速度逐渐逼近目标。而速度又可以自动达到最大速度,这样,通过逐渐的控制最大速度从而达到控制速度。
接着,如何使最大速度变化呢。
因为速度是变化的,所以就可以通过速度变化来使最大速度变化。
这样,速度变化驱动着最大速度变化,从而实现了速度的缓慢过度。
其实速度到最大速度之间依旧是很快过渡,只不过我们是通过速度慢慢给出最大速度,从而实现过渡。