[英]Java move player smoothly from one point to another
我所需要的只是基于点击来扼杀玩家的新协调,让玩家顺利地向它移动。 例如,玩家在(20,20)并且你点击(50,80)我将如何让它顺利移动。 我尝试了许多不同的东西,主要是基于勾股计算试图通过找到斜边来计算新的坐标,然后找到一个更小的斜边相同的三角形,但必须有一个更简单的方法。
您可以:
虽然我使用javascript编程,但您应该能够阅读并理解它
function move(x1,y1,x2,y2,speed){//executed each time frame. Returns coords as array [x,y]
if(!speed)speed=1;
var dis=Math.sqrt(Math.pow(x1-x2)+Math.pow(y1-y2));
return [(x1-x2)/dis*speed,(y1-y2)/dis*speed];
}
每帧的速度是恒定的,但是当它到达目的地时它将停止。 它可能会稍微震动,但可以轻松修复。
编辑:我忘了提。 此函数返回速度。 不是坐标
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.