我正在制作一款游戏,但在某些低端安卓设备(Galaxy S mini、Galaxy ACE)上出现了问题,这些设备硬件实际上很差。这两个设备的FPS都超过85,在其他设备上(HTC Desire、Sony Xperia Arc S、Samsung Galaxy S、HTC Wildfire)FPS是“正常”的(大约60FPS)。在电脑上也显示为60 FPS。显然,85+ FPS太多了,因为游戏体验不同,可能会给那些在85 FPS+上玩的玩家带来不公平的优势。
我想将FPS限制在最多60。
我已经搜索了这个论坛,并找到了与我现在提出的确切问题相同的问题。Limit FPS in Libgdx game with Thread.sleep() doesn't work 用户@daniel提出的解决方案是:
但问题是这对我不起作用。如果我使用该代码(30替换为60),我会得到30-33 FPS,或者如果我只使用Daniel的代码,我会得到大约15-17 FPS。为什么会这样,为什么对我不起作用?如何将所有设备上的FPS限制为最大60?我已在计算机和设备上测试了此代码。
非常感谢任何帮助。谢谢。
我想将FPS限制在最多60。
我已经搜索了这个论坛,并找到了与我现在提出的确切问题相同的问题。Limit FPS in Libgdx game with Thread.sleep() doesn't work 用户@daniel提出的解决方案是:
Thread.sleep((long)(1000/30-Gdx.graphics.getDeltaTime()));
但问题是这对我不起作用。如果我使用该代码(30替换为60),我会得到30-33 FPS,或者如果我只使用Daniel的代码,我会得到大约15-17 FPS。为什么会这样,为什么对我不起作用?如何将所有设备上的FPS限制为最大60?我已在计算机和设备上测试了此代码。
非常感谢任何帮助。谢谢。