我想将对象移动到特定方向。 以下是我使用的方法:
private void calculateDirection(float aimX, float aimY) {
// calculating distance to target
float xDistance = aimX - x;
float yDistance = aimY - y;
x += xDistance / 10 * speed * delta();
y += yDistance / 10 * speed * delta();
}
到目前为止效果很好,但正如你所看到的那样,x和y变量除以10会导致物体先快速移动,然后当xDistance和yDistance变小时,物体变得越来越慢。 如何进行计算以始终以完全相同的速度移动对象?
我已经尝试过这样的事情:
x += xDistance / +xDistance;
但它不知何故无法工作。