我一直在研究游戏引擎。它可以在窗口模式、全屏模式或小程序模式下创建游戏。FPS 在小程序模式和窗口模式下很好(给我 90-120 fps,地图中最多 3000 个对象),但在全屏模式下,它下降到 25-50 fps。这是窗口类。
https://code.google.com/p/game-engine-for-java/source/browse/src/com/gej/core/GWindow.java
找不到问题出在哪里。在 Windows 上运行更多是好的,但在 Ubuntu 上它有这个问题。列出显示模式给了我位深度 -1 这是我机器上的完整列表。
1600 900 -1
1440 900 -1
1440 900 -1
1280 800 -1
1280 800 -1
1152 864 -1
1024 768 -1
1024 768 -1
1024 768 -1
832 624 -1
800 600 -1
800 600 -1
800 600 -1
800 600 -1
640 480 -1
640 480 -1
640 480 -1
640 480 -1
720 400 -1
我发现位深度 -1 表示 BIT_DEPTH_MULTI,这是 DisplayMode 类中的一个常量。因此,设置模式将 fps 提高到 60-70fps,但仍不如窗口模式。