更具體地說,一個桌面libGDX-LWJGL應用程序。有配置選項可禁用CPU同步以及vsynching,但不管應用程序運行在60fps。是否可以在libGDX中禁用幀限制?
這適用於所有實際用途 - 但出於好奇如果沒有別的,我想看看幀率可以有多高。
更具體地說,一個桌面libGDX-LWJGL應用程序。有配置選項可禁用CPU同步以及vsynching,但不管應用程序運行在60fps。是否可以在libGDX中禁用幀限制?
這適用於所有實際用途 - 但出於好奇如果沒有別的,我想看看幀率可以有多高。
Rode Hyde由於圖書館的變化,答案不再正確。試試這個:
LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
config.vSyncEnabled = false; // Setting to false disables vertical sync
config.foregroundFPS = 0; // Setting to 0 disables foreground fps throttling
config.backgroundFPS = 0; // Setting to 0 disables background fps throttling
另外,確保任何硬件VSYNC是關上你的GPU,如果可能的話,作爲@RodHyde提及。
答案很大程度上取決於CPU和顯卡的速度,但是如果在創建應用程序時嘗試像下面這樣的配置,並在圖形卡上禁用vsync,那麼應該會很難。
LwjglApplicationConfiguration cfg = new LwjglApplicationConfiguration();
cfg.title = "Framerate test";
cfg.width = 1280;
cfg.height = 720;
cfg.fullscreen = false;
cfg.useGL20 = false;
cfg.useCPUSynch = false;
cfg.forceExit = true;
cfg.vSyncEnabled = false;
禁用vsync會在圖形卡的設置中出現。在我的nVidia卡上,它在選項中以「垂直同步」的形式給出。它被設置爲「自適應」,將幀速率限制在60fps,但將其設置爲「關閉」後,我看到> 012f> 4000fps。
這工作完美。謝謝! – Mistodon 2013-02-26 23:39:36
cfg.useCPUSynch
已經被拿出來了。設置cfg.foregroundFPS
到一些大數目,而不是我的伎倆。
這應該是@ RodHyde的回答。這在技術上是不正確的,因爲OP希望完全禁用幀限制。它也是不完整的,因爲你沒有提到vSyncEnabled和backgroundFPS。 – 2014-01-17 13:11:29
400 fps,但現在box2d太快 – 2014-06-01 10:00:28
@Paul我會問#Libgdx(irc.freenode.net)或[libGDX論壇](http://www.badlogicgames.com/forum/) 。 – 2014-08-11 08:03:57