我的Android游戏使用基于真实空间坐标的屏幕坐标,我的转换如下:所有这些都是伪代码,但我突出显示为代码
Real-space=(position/480); (so for example 240/480 would be halfway across the screen)
Velocity = 1/Time; (Time = seconds)
Real-space= Real-space+ (Velocity * delta time);
Screen Coordinates = Real-space* screen width / length
现在我遇到的问题是,在我的游戏中,我需要匹配2个精灵的屏幕坐标,所以它们一起移动(一个在另一个上面,所以我只是使用像
Sprite1_Screen_Coords = (Sprite_2_Screen_Coords-Sprite1 Height)
(所有高度都按比例缩放,因此相对于当前正在运行应用的屏幕尺寸而言)
这样可行,但我需要匹配“真实空间”坐标。
显然我可以做类似的事情:
Sprite1-Real-Co-ordinates = Sprite2-Real-Co-ordinates
这意味着它们会相同,但是我会从中减去什么值,以便它“完美地”位于另一个精灵之上?如何从/我为我的精灵派生这个缺失值?所以夏天,我需要像:
Sprite1-Real-Co-ordinates = (Sprite2-Real-Co-ordinates - something representing the sprites height)
谢谢大家! : - )
答案 0 :(得分:0)
答案是我简单地将精灵的缩放高度除以当前屏幕高度并使用该值 - 似乎对我测试过的3种分辨率起作用。