Forcing half v-sync (or half refresh rate) on a custom resolution.

Discussion in 'Videocards - NVIDIA GeForce Drivers Section' started by IzanagiSato, Jun 2, 2020.

  1. IzanagiSato

    IzanagiSato New Member

    Messages:
    4
    Likes Received:
    0
    GPU:
    GTX 1070 8GB GDDR5
    So a bit of background first, on how I arrived on this problem. Also, I’m at my wit’s end, that’s why I decided to finally just post here and rely on the savvy.

    This site has helped me tremendously on enjoying PC gaming. I used to dislike PC gaming, because it just never felt as smooth as when I play my games on consoles. There’d be random stutters, there’d be the input delays, and lots of settings to tweak with just to get an optimal experience. Not to mention, I just feel more comfortable playing with a gamepad than KB+M. Anyways, that changed when I discovered the ‘low lag v-sync’. Suddenly, I can get (micro)stutter-free, low-lag, no-tearing gaming. You know, like how it is in consoles. I finally got converted.

    Along the way, I also started utilising downsampling. Or supersampling. You know, running the game on a higher resolution for less aliasing and better graphics. I use DSR (Dynamics Super Resolution) to achieve this. I run games on higher resolutions than my native, in tandem with RTSS and v-sync.

    ...And half v-sync, when my rig is unable to run the game in ultra settings with higher resolutions. I set the cap in RTSS at half of my refresh rate - 0.007. It works amazing. No stutters, no delays. I set half v-sync through Nvidia Inspector, because that option isn’t really available in the Nvidia Control Panel.

    Anyways, so all is good. Until today. I finally had to run a game in a lower resolution that isn’t x4. To those who aren’t familiar, DSR has the option of enabling a 13-tap Gaussian blur filter. This is supposed to iron out misaligned pixels or something WHEN you are running in anything lower than x4. In standard resolutions, x4 in DSR would be 4K (2160p). So. Uh yeah. The filter blurs. But if I don’t use it at the resolution I’m using (x2.25) for a particularly demanding game, text is all garbled, and the game just looks ugly in general.

    Then I did a little bit of research. Apparently, there’s another way to downsample, which uses another kind of filtering. Where things are sharper, and not to mention, there’s no need to use blurring just to fix texts—Custom resolutions. And you can set them up exactly where you would typically set up DSR too (in the Nvidia Control Panel). So I did. I disabled DSR, because you can’t enable it while also creating custom resolutions. I set the x-y resolutions to the values I desire, but I leave the timing to automatic.

    Everything works just as intended. The games I ran at this point do look better, much sharper, like how I imagine they were intended to look. It does make me question why DSR exists in the first place, when there’s this. But I guess it’s because DSR is much easier to set up and much more accessible.

    Do note that this point in the story, all the games I tested were games that weren’t particularly demanding and I ran at 60fps (well, 59.992FPS, to be exact, in line with low-lag v-sync instructions), which is my monitor’s refresh rate (59.998731...)

    Everything works. Or so I thought. I boot up another game—Witcher 3. This is the game I was talking about that I have to run at a lower resolution other than 4K, and also have to force the frame rate below 60 in order to get a consistent, frame drop-less display. I didn’t change anything other than using custom resolution instead of DSR. It. Is. Stuttering. It didn’t when I used DSR with it in the past. On the same exact settings. With half v-sync set up in Inspector and RTSS capping it at half of my refresh rate (29.992).

    I was lost. But of course I didn’t give up right there and then. I tried tons of things. Changing the frame rate limit to slightly higher or slightly lower, turning off half v-sync, putting the pre-rendered frames to On, Off, Ultra. I even tried playing around with the custom resolution and changing the refresh rate, but lowering the refresh rate of a custom resolution in my monitor just gives me an out-of-range notice, so I figured that option is out. Nothing helped.

    The only way I can run at 30hz (so as to be perfectly compatible with my preferred 30fps) is by using half v-sync. I then tried disabling RTSS. Then re-enabled half v-sync for Witcher 3 through Inspector. I ran the game, expecting it’ll run at 30fps, albeit with great input delay (because refresh rate and frame rate are two separate things, and the ‘30fps’ resulting from half v-sync is merely an illusion. The rig is still pumping out frames uncapped, that’s why you get delay. From what I understand). It didn’t. It was running as if I was just using normal v-sync (which, in my case, is 60hz). I finally know why it was stuttering from my run earlier, before I disabled RTSS. The half v-sync isn’t working. It doesn’t work with a custom resolution. So, as it happens, I was effectively capped at 29.992fps (with RTSS) while the refresh rate is at 60, causing the stutters.

    I’m also pretty sure it is reproducible, because I tried it with other games as well. Like Dragon Age Inquisition. Inspector’s half v-sync doesn’t work when running a custom resolution.

    So there you have it.

    Tl:dr Inspector’s half v-sync, which can’t be enabled in any other way (at least from the extent of my knowledge), is seemingly incompatible with custom resolutions.. Please help. What can I do about this? Work arounds? Other ways to force refresh rate lower?

    If there’s any more info you need, please just ask away. I’ll answer anything that is deemed relevant, especially with the quarantine still in effect on my country. I have all the time to answer questions that people would need to help me solve my gaming problem. Thanks to anyone who could help, but especially to the one who can help me resolve it.
     
  2. MrBonk

    MrBonk Ancient Guru

    Messages:
    3,111
    Likes Received:
    129
    GPU:
    MSI RTX 2080
    The old custom resolution resolve filter is not good quality. It's sharper, but it will add aliasing back into the image and the higher ratio you go the more it can't properly resolve the final output. Resulting in reverse Anti Aliasing. (DSR at 0/1% will end up causing the same but less severely) See these comparisons: https://www.screenshotcomparison.com/comparison.php?id=138 (4xMSAA when the gasussian resolve is too narrow vs average. It's sharper but it's now introducing aliasing back)

    If you really want it sharper, you should just use DSR at 1% and forget it and use your display's sharpening function or use a Reshade Sharpening shader to make it sharper if you want. Which will look better still than the old terrible custom resolution function. At least then you know DSR will be hassle free. Text no matter what kind of downsampling you do, will never look the same as native resolution. You should just get used to it and move on.
    1/2 vsync worked in Windows 7 with custom resolutions for years before DSR. I don't know about on modern GPUs though or on Windows 10.
     
  3. yasamoka

    yasamoka Ancient Guru

    Messages:
    4,812
    Likes Received:
    218
    GPU:
    EVGA GTX 1080Ti SC
    Get yourself a G-Sync / FreeSync display and avoid all the headache.
     
    enkoo1 likes this.
  4. janos666

    janos666 Master Guru

    Messages:
    952
    Likes Received:
    132
    GPU:
    MSI RTX2060 6Gb
    I didn't even know it was possible to do supersampling with custom resolutions.
    I would always try integer multiples and preferably even numbers for DSR (and similar), so 2.00x or 4.00x and not 2.25x, 2.50x or 3x (but 4x is clearly the optimal one here). That could help with the re-sampling artifacts (depending on the sampling algo and other possible filtering). And I would personally never go below ~45fps if I could help it (for example, by lowering the resolution if in-game settings can't help any further).
    A big, crude chunk of it, at least. You will still need to deal with an fps limiter (and, of course, to get a decent, playable min/average fps).
     
    yasamoka likes this.

  5. yasamoka

    yasamoka Ancient Guru

    Messages:
    4,812
    Likes Received:
    218
    GPU:
    EVGA GTX 1080Ti SC
    Indeed.
     

Share This Page