我知道这是一个古老的主题,但这是我处理不同决议的方法
我得到精灵x和y然后将它们除以800和480
例如,如果我在800和480上有150和50的精灵 它将在另一个屏幕分辨率为0.1875 * Gdx.graphics.getWidth()和0.1041 * Gdx.graphics.getHeight()
但问题是这并不适用于所有分辨率,因为当精灵处于高分辨率时,与小的分辨率相比有很大的变化
还有其他办法吗?
答案 0 :(得分:0)
使用Viewports
:https://github.com/libgdx/libgdx/wiki/Viewports
Viewport
基本上为您完成所有分辨率数学运算。
这是它的工作原理: 您可以选择自己选择的世界尺寸。例如:400宽度,300高度。单位无关紧要。
当您将精灵放置在位置(200,150)时,无论分辨率如何,该精灵的左下角都将位于屏幕的中心。
Viewport
将为您完成从世界坐标到屏幕坐标的计算。