Open matjaeck opened 1 year ago
We already do. The static limiter was just replaced with VSync in https://github.com/OpenRA/OpenRA/pull/17439.
No, we don't do this. We don't automatically reduce framerate nor we let it be set lower than 25
By the way... while @Mailaender is correct and we do have VSync on by default (which is a bit weird but okay...), if we look closely at the original post, it requests/suggests 2 things, both pretty reasonable (especially as a bonus to VSync being on by default), neither of which we do currently.
Also note that VSync doesn't work everywhere.
So the plan is to revert fe13196f028cc0ecde4799b431537c2fa116a043 then?
No, the plan would be to:
I can confirm that VSync is not reliable: https://github.com/OpenRA/OpenRA/issues/20681
Motivation
Graphics cards and fans can fail over time if a static or low-detail scene is rendered at an uncapped rate. See https://web.archive.org/web/20170903085237/http://www.dailytech.com/Hot+Starcraft+II+is+Frying+Graphics+Cards+Blizzard+Issues+Temporary+Fix/article19224.htm and https://games.slashdot.org/story/10/08/02/1251203/is-starcraft-ii-killing-graphics-cards. Although it is not primarily the application's job to prevent the hardware from overheating and breaking fans, the application should use the available resources wisely and not just push the limits.
Proposed solution
Cap framerate in static scenes at for example 10 frames per second. This saves energy and prevents that the frame rate skyrockets, for example in the main menu screen when the background screen is "paused". It is a common thing in games to cap frame rate in loading or other mostly static scenes.
Universally cap framerate at a reasonable refresh rate, for example at 240 frames per second which is the maximum you can set via the "Frame Limiter" setting.