我正在尝试查找有关如何缩放精灵速度/移动/坐标的信息。
我的意思是如何让精灵以相对于屏幕尺寸/ DPI的相同速度移动,以便从屏幕的一侧到另一侧获得相同的实时数量?
我在各种论坛上可以找到的与精灵缩放有关的所有帖子都与精灵的大小有关,但是这一部分到目前为止我还可以,只是当我移动一个精灵时,它根据设备的dpi /分辨率,以不同的速度到达那里。我希望我有意义。
这是我到目前为止的代码,而不是使用显式数量,如1,我使用的内容如下:
platSpeedFloat= (1 * (dpi/160)); //Use '1' so on an MDPI screen, the sprite will move by 1 physical pixel
然后基本上我正在做的是这样的事情:(以前声明的所有变量)
platSpeedSave+=platSpeedFloat; //Add the platSpeedFloat value to the current platSpeedSave value
platSpeed=(int) platSpeedSave; //Cast to int so it can be checked in the following statement
if (platSpeed==platSpeedSave) //Check the casted int value to float value stored previoiusly
{floorY=floorY-platSpeed; //If they match then change the Y value
platSpeedSave=0;} //Reset
如果有人可以提供帮助,我将不胜感激 - 希望我有道理。以上似乎没有效果精灵在较低的DPI屏幕上“更快”移动。
由于