In a blank scene in gdevelop, the max FPS I have EVER had was 60.
Why 60? I thought it was because the max FPS was set to 60, so I changed that value.
But it was STILL 60.
Why is it stuck at 60? In other game engines a blank scene has 100 - 300 fps, but for me its just 60. Sometimes it jumps to 61, but I don’t really know why.
High level: Because your monitor refresh rate is 60hz, likely.
More detail:
- Chromium forces Vsync enabled. This is also true for most browsers overall. (Chrome, Safari, etc)
- Vsync forces framerates to not go past the monitor refresh rate.
- Electron uses Chromium.
- GDevelop games uses Electron.
If you had a 240hz monitor and your max FPS was set to 240 or higher, you’d get 240 fps, too.
You can off vsync option in project file (.json), but… then game will just crash, so, you cannot see 60+ fps without 60+ hz monitor
Electron hasn’t supported disabling vsync since before Electron 18, so any project json modifications won’t work for this.
Edit: It is technically chromium, not Electron, that restricts this, and the disable vsync flags on Chromium stopped being available about the time of release of Electron v18.
sooo… is there just no way to do it without buying a new monitor?
Correct, and it wouldn’t matter as it won’t be faster than the player’s monitor anyway. You getting a new monitor would only change the max framerate during previews on your computer.