有很多鼠标追随者教程。他们中的大多数都有一个简单的公式来缓和运动:
x += (tx - x) / interp;
y += (ty - y) / interp;
(tx =目标位置,x =实际位置,interp> 1)
这使得跟随者在开始时非常快,然后缓慢减速到目标位置。
我如何更改公式,以便我可以定义自定义加速度,自定义减速度和两者之间的最大速度?从一开始我就会对增加的加速度感到满意。
谢谢!
汉斯
答案 0 :(得分:0)
加速度是速度随时间的变化。所以在1D中,要应用恒定速度,你需要:
v += a * dt;
x += v * dt;
其中:
a
是加速度(常数)v
是速度x
是x-position dt
是时间步长,即更新之间的时间除了a
现在是负数之外,你会做一些类似的减速操作。
要设置最大速度,您只需要对v
进行条件检查,可能:
v = MIN(v_max, v);
其中v_max
是您允许的最大速度(常数)。
在2D中,您需要考虑旅行方向:
x += v * cos(theta);
y += v * sin(theta);
我会留给你来计算theta
...