javascript – 当画布更大时,移动速度变慢

使用此代码:

x = x + (canvas.height/250);

每1毫秒发生一次,应该按照画布大小的比例向x添加一个数量.然后绘制x,因此x应在不同屏幕尺寸上以相同的速度向下移动画布(画布根据屏幕大小改变大小).然而x在我的ipod和我的电脑上以不同的速度向下移动.

如果你想知道完整的源代码和html文件,html是here,链接到它的javascript文件是here.

最佳答案
首先,让我们考虑一下这条线的作用:

x += canvas.height / 250;

对象的速度是canvas.height / 250.距离是canvas.height.我们可以说:

distance = speed * time

我们已经有距离和速度了,所以:

time = distance / speed = canvas.height / (canvas.height / 250) = 250 ms

因此,对象总是在2.5秒内到达目的地.为了实现这一点,您可以根据屏幕大小更改速度.

如果您希望所有设备的速度都相同,则它不应该依赖于canvas.height.

转载注明原文:javascript – 当画布更大时,移动速度变慢 - 代码日志