[英]Java, LibGDX locks my game at 30 frames per second
我正在使用LibGDX在Java中进行游戏开发。
我已经在Google上进行了广泛搜索以找到解决问题的方法,但是我发现大多数人实际上并没有锁定他们的游戏,而是想要锁定它。
这是我正在使用的配置代码
LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
...
config.width = 960;
config.height = 768;
config.backgroundFPS = 60;
config.foregroundFPS = 60;
config.vSyncEnabled = false;
...
我还尝试了将backgroundFPS
和foregroundFPS
FPS设置为0。
如果将其设置为20,则实际上会将游戏限制为20fps。 有什么解决办法吗?
我知道它并没有做太多的工作,因为我只测试了帧率记录器就测试了游戏循环,但仍然保持在30。
-1。 如果使用的是fpsLogger,请尝试使用步骤2或Fraps中的代码。
0.禁用或启用Vsync。
1.有时,如果使用玻璃布,可能会出现问题。 有时它不显示30 fps。
2.打印Gdx.graphics.getDeltaTime()
找出您的真实fps。
3.不要设置backgroundFPS和foregroundFPS。
4.确保您没有使用Thread.sleep()
函数。 您可能把它放在前面而忘了它。
5.重新启动计算机。 如果您确实找不到问题的根源,则可能会有所帮助。 也许您的计算机很累,或者图形驱动程序有问题。
6.在另一个系统上尝试。 此问题可能是由您的安装引起的。
7.要查看问题是否出在计算机或项目中,请新建一个项目并测量其fps。
我在别人的计算机上测试了该程序,它以60fps的速度运行而没有任何麻烦。
事实证明,我的计算机使用的是集成显卡,而不是高性能显卡。 强制Java使用图形卡后,它现在以60fps的速度运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.