Is this kind of VSYNC behavior possible?
Posted: 12 Jan 2025, 14:26
I want my monitor to refresh at a fixed 240hz (not variable), my game to run capped at 60fps, and for frames to be presented never more frequently than every 4 screen refreshes, but if a frame takes longer than 4 refreshes to render then it should present at the next immediate refresh, not wait another 4 refreshes. I made a diagram to try and explain my desired behavior.
Is this kind of VSYNC behavior is possible? The reason I want this is because I can't stand VRR flicker, and even capping my fps to 60 in games that would run well above 60 uncapped can still have the occasional frametime spike above 16.67ms which results in a VRR flicker. What I'd prefer instead is to get a 4.16ms judder when frametime spikes, as that is less noticeable to me than a VRR flicker.
Simply enabling VSYNC with my monitor refresh at 240hz and the game capped to 60fps doesn't seem to do this. This results in very noticeable, persistent judder. I don't believe this is due to my PC running games at consistently variable frametimes, because if I set my monitor to 60hz with VSYNC enabled, I get very smooth frametimes most of the time. However, when there then is an occasional frametime spike, it results in 16.7ms of judder, which is very noticeable.
The closest I've gotten is using Lossless Scaling to enable VSYNC 1/4 (every 4 vblanks) and using RTSS or the in-game limiter to cap FPS to 60. This does result in perfect frametimes when the game runs at 60 and much less noticeable judder if it drops below, but it introduces more input lag than VSYNC@240hz/60fps and Lossless Scaling itself seems to lower my performance by 10-20%, meaning I'm more likely to drop below 60fps in heavy areas of a game.
Is this kind of VSYNC behavior is possible? The reason I want this is because I can't stand VRR flicker, and even capping my fps to 60 in games that would run well above 60 uncapped can still have the occasional frametime spike above 16.67ms which results in a VRR flicker. What I'd prefer instead is to get a 4.16ms judder when frametime spikes, as that is less noticeable to me than a VRR flicker.
Simply enabling VSYNC with my monitor refresh at 240hz and the game capped to 60fps doesn't seem to do this. This results in very noticeable, persistent judder. I don't believe this is due to my PC running games at consistently variable frametimes, because if I set my monitor to 60hz with VSYNC enabled, I get very smooth frametimes most of the time. However, when there then is an occasional frametime spike, it results in 16.7ms of judder, which is very noticeable.
The closest I've gotten is using Lossless Scaling to enable VSYNC 1/4 (every 4 vblanks) and using RTSS or the in-game limiter to cap FPS to 60. This does result in perfect frametimes when the game runs at 60 and much less noticeable judder if it drops below, but it introduces more input lag than VSYNC@240hz/60fps and Lossless Scaling itself seems to lower my performance by 10-20%, meaning I'm more likely to drop below 60fps in heavy areas of a game.


