Using the RTSS frame limiter did not really seem to improve things over the driver settings in my initial tests.MrBonk wrote:But the rule of the thumb for me in all of my experiences is that most games built in Vsync is subpar. Especially UE3 games.
The best frame pacing will always be a combination of>
If 60+hz| In game vsync disabled. Frame cap set with RTSS to your desired refresh. Vsync forced through drivers.
If 30hz on 60hz monitors| In game vsync disabled. Frame cap set with RTSS to 30. Maximum pre-rendered frames set to 1 in drivers and 1/2 refresh vsync as well.
I've returned to this and am now testing with the FRAPS benchmark feature, because it records every frame rather than polling at 100ms, which gives a better look into performance.
For graphing the results from FRAPS, I found FRAFS to be useful.
I'm still open to suggestions if anyone knows of a better way of doing this. Having to manually save and then graph the results is less convenient than Afterburner where I can just alt-tab to it and see the results directly. I also prefer the in-game stats that Afterburner provides. (GPU load, Memory usage, CPU load, Frame Rate/Time etc.)
One of the nice things about FRAPS though is that you can specify a duration, so I just set a 2 minute benchmark run of the Junkyard chapter in the game, which is a cutscene that lasts about 1:40, and then I leave it static for the last 20 seconds or so - if anyone is looking to replicate these results.
I'm still interested in seeing AMD results to see whether the frame-pacing is any better by default, and if they provide the tools required to improve it.
What I will say before posting these results is that I had to enable the "Custom Direct3D support" option in RTSS in order to use it at the same time as FRAPS or else I would just get a black screen - even with the OSD disabled - so I don't know if that affected the RTSS results at all.
What my testing certainly shows is that even if you're using an external framerate limiter like RTSS, you still need to limit the maximum number of pre-rendered frames to 1.
These are the results that I got just using RTSS without changing that setting.
They are hardly any better than running the game without the framerate limiter.
Compared against my original results, you can see how Afterburner was only catching one half of the frame-time variation, where FRAPS displays the oscillation between early and late presentation which explains how it can still read "60 FPS".
Here is the rest of the testing:
I'm not sure that the frame rate caps are nearly as important as reducing the maximum number of pre-rendered frames to 1 and forcing v-sync in the driver instead of enabling it in the game.
If anything, performance seems like it may be worse with the framerate caps in place.
RTSS had to be capped at 61 FPS, because 60 was allowing it to tear. (I always have Adaptive V-Sync enabled)
And enabling the RTSS cap shows the most variance at the end of all the tests, which is basically just a static scene.
Of course that may not always be the case. Perhaps in some games, it is still important to be limiting the maximum framerate.
But here, it does not seem to be beneficial.