java使图像以正确的速度在屏幕上移动,以适应所有显示
我有一个自上而下的射手使用油漆的方法,我想让它对所有的显示器工作。它的工作原理是获得分辨率,将x和y除以40,将其全部分割成正方形。 我让子弹移动的方法是用线和移动法
public void move(){
x += dx;
y += dy;
}
但如果个人电脑更小,子弹在屏幕上的移动速度会更快。如何让它在较小的屏幕上以较慢的速度移动,在较大的屏幕上以较快的速度移动? 谢谢你的建议
你可以在下面搜索框中键入要查询的问题!
我有一个自上而下的射手使用油漆的方法,我想让它对所有的显示器工作。它的工作原理是获得分辨率,将x和y除以40,将其全部分割成正方形。 我让子弹移动的方法是用线和移动法
public void move(){
x += dx;
y += dy;
}
但如果个人电脑更小,子弹在屏幕上的移动速度会更快。如何让它在较小的屏幕上以较慢的速度移动,在较大的屏幕上以较快的速度移动? 谢谢你的建议
# 1 楼答案
你说的慢是什么意思?你是说子弹在屏幕上移动的总时间(以秒为单位)在不同的设备上是不同的吗
假设您按照描述正确地完成了所有计算,我认为您忘记了一个因素:不同的设备有不同的计算速度(也可能是屏幕更新速度),因此一个设备中的“勾号”可能比其他设备长或短。所以当你调用move时,你应该计算上次调用move()的时间,然后根据它计算dx和dy。希望这有意义