The effect:
After starting a table with option Vsync=1 everything works fine with 60fps. After some time (interval is mostly different) the game begins to stutter and then is constantly at 30 fps for almost exactly 1 minute and then will go up to 60 fps again.
The background (I did lots of research, but not sure if I did understand everything correctly):
The issue is caused by Vsync itself. Vsync always sets fps to a multiplier (1x, 1/2x, 1/3x) of the monitor refresh rate. If the fps drops below the monitor rate Vsync automatically falls back one multiplier step. This explains the 30 fps mentioned above. I'm not sure, but I assume when framerate is up again for about one minute the vsync multiplier is going up again.
This also explains why it does not occur for all users (I got one confirmation from another user in different forum - I first thought it is table related). It seems within the table I tested with I am exaclty at the limit - setting monitor refreshrate to 59hz insetad of 60hz makes the issue more rare, setting to 50hz almost eliminates it but the "felt smothiness" is not so good then.
So people with highend-GPUs will not have this.
To avoid the switching between 60-30-60fps triple buffering was introduced. Lets say it unties GPU render rate from refresh rate but still maintaining Vsync. When using Vsync triple buffering should always be set to be used. But this seems not to work with VPX (at least for my rig).
As far as I understood several articles about that it must be explicitely used by the game itself. Nvidia control panel anly allows general use or not.
Now the question:
Does VPX explicitely use triple buffering?
(I found lots of forum entries about triple buffering not correctly working with DX11, but this was related to 64-bit applications and the posts were outdated anayway. Another article said that triple buffering won't work with windowed fullscreen mode)
The overall performance of my card is quite satisfying, when vsync is at 60 fps gameplay is very smooth. But when the slowdown appears it is unplayable at all. Maybe this could be solved somehow, I would prefer some short single stutter instead of a minute of crazy ball jerking.




Top




Contributor








are all trademarks of VPFORUMS.