Java,LibGDX以每秒30帧的速度锁定我的游戏

时间:2016-01-28 22:59:44

标签: java libgdx

我使用LibGDX在Java中进行游戏开发。

我已经在Google上进行了广泛的搜索,以找到问题的解决方案,但我发现大多数人实际上并没有将游戏锁定并希望锁定。

这里是配置代码I' m

LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
...
config.width = 960;
config.height = 768;
config.backgroundFPS = 60;
config.foregroundFPS = 60;
config.vSyncEnabled = false;
...

我还尝试将backgroundFPSforegroundFPS设置为0。

如果我将它设置为20,它实际上将游戏限制为20fps。这有什么解决方案吗?

我知道它没有做太多的工作,因为我测试的游戏循环除了帧速率记录器之外什么都没有,它仍然坚持到30。

2 个答案:

答案 0 :(得分:1)

-1。如果您使用的是fpsLogger,请尝试使用步骤2中的代码或Fraps。

0。禁用Vsync或启用它。

1。如果您正在使用Fraps,有时可能会出现问题。它偶尔会显示30 fps。

2。打印if curl WEBSITEURL | grep -c "incident-title" > 0; then printf "Investigating Issue"; else printf "Fully Operational"; fi 以查找您的真实fps。

3。不要设置backgroundFPS和foregroundFPS。

4. 确保您没有使用Gdx.graphics.getDeltaTime()功能。你可能会把它放在前面并忘记它。

5. 重新启动计算机。如果你真的找不到问题的根源,这可能会有所帮助。也许您的计算机很累或图形驱动程序出现问题。

6. 在其他系统上试用。此问题可能是由您的设置引起的。

7. 要查看问题是否在您的计算机或项目中,请创建一个新项目并测量其fps。

答案 1 :(得分:0)

我在其他人的计算机上测试了该程序,它以60fps的速度运行而没有任何问题。

事实证明我的电脑使用的是集成显卡而不是我的高性能显卡。在强制Java使用显卡后,它现在以60fps运行。