Scanline sync

Discussion in 'MSI AfterBurner Application Development Forum' started by CalinTM, Sep 18, 2018.

  1. CalinTM

    CalinTM Ancient Guru

    Messages:
    1,684
    Likes Received:
    18
    GPU:
    MSi GTX980 GAMING 1531mhz
    Can anyone explain how scanline sync works? I need to use both frame cap and scanline sync to exact fps to make scanline sync work?
     
  2. RealNC

    RealNC Ancient Guru

    Messages:
    4,894
    Likes Received:
    3,168
    GPU:
    RTX 4070 Ti Super
    No. When you enable scanline sync, the frame cap is synced to your monitor's refresh rate. The value you enter is recommended to be negative, in order to push the tear line upwards and make it invisible.

    Also make sure vsync is OFF when using this. Scanline sync is a replacement for vsync, it will glitch out if you forget to disable vsync.
     
  3. CalinTM

    CalinTM Ancient Guru

    Messages:
    1,684
    Likes Received:
    18
    GPU:
    MSi GTX980 GAMING 1531mhz
    Negative ? Like what ? If i use fps cap of 70, scanline should be -70 ?
     
  4. RealNC

    RealNC Ancient Guru

    Messages:
    4,894
    Likes Received:
    3,168
    GPU:
    RTX 4070 Ti Super
    No. The number you enter there is the scanline RTSS should try and sync against. This of course changes depending on the resolution you use. But usually, you want about 30 to 80 scanlines above the bottom. If your current resolution is, say 1440p, then you might have 1500 total scanlines or so (it's always higher than the actual amount of visible pixel lines, because... reasons.) So you'd want to sync against scanline number 1470, for example. So you'd need to enter "1470".

    However, you can just specify a negative value to achieve the same result. In this case, -30 will also sync to scanline 1470, because it means "30 scanlines above the last scanline, whatever that last scanline is." A negative value also means you don't need to care about how many scanlines there are in total. You only care about the distance from the bottom scanline.
     
    yasamoka likes this.

  5. CalinTM

    CalinTM Ancient Guru

    Messages:
    1,684
    Likes Received:
    18
    GPU:
    MSi GTX980 GAMING 1531mhz
    Can you please tell me the number for my 70 fps cap ? And for 65 fps cap?
    Using 1080p and 144hz.
     
  6. RealNC

    RealNC Ancient Guru

    Messages:
    4,894
    Likes Received:
    3,168
    GPU:
    RTX 4070 Ti Super
    Scanline sync, as the name suggests, syncs the frame limiter to a specific scanline on every monitor refresh. If you run 60Hz, it means you get 60FPS. If you want 70FPS, then don't use scanline sync. Use the normal FPS cap mode.

    The number you enter is the scanline you want to sync against. It will be the scanline where you see the tearline. Start with -1. You'll see a tearline at the top. Go to -10, then -20, and so on, to push the tearline upwards, until the tealine is hidden.
     
  7. CalinTM

    CalinTM Ancient Guru

    Messages:
    1,684
    Likes Received:
    18
    GPU:
    MSi GTX980 GAMING 1531mhz
    Thanks for the info! Much appreciated
     
  8. Andy_K

    Andy_K Master Guru

    Messages:
    837
    Likes Received:
    237
    GPU:
    RTX 3060
    I get this, but... isn't it contradictory to your next post?
    If -1 is one line above last scan line it can't be on top, right?
     
  9. RealNC

    RealNC Ancient Guru

    Messages:
    4,894
    Likes Received:
    3,168
    GPU:
    RTX 4070 Ti Super
    It takes 30 to 80 scanlines for the GPU to actually sync. If you use 1, for the first scanline, the GPU will most probably sync 30 to 80 scanlines later than that. If you use the last scanline, then the sync will actually happen at the top 30 to 80 scanlines of the next frame. If you use 1, don't you get tearing at the top of the screen, somewhere between 30 and 80 lines from the top?

    You need to target -30 to -80 above the wanted scanline. It's system specific. Very fast GPUs will probably have a smaller delta.
     
  10. khanmein

    khanmein Guest

    Messages:
    1,646
    Likes Received:
    72
    GPU:
    EVGA GTX 1070 SC
    @RealNC If I enable V-Sync through NvCpl, then the Scanline sync should be 0 right? Any changes from your previous guide? Thanks.
     

  11. CalinTM

    CalinTM Ancient Guru

    Messages:
    1,684
    Likes Received:
    18
    GPU:
    MSi GTX980 GAMING 1531mhz
    What previous guide?
     
  12. khanmein

    khanmein Guest

    Messages:
    1,646
    Likes Received:
    72
    GPU:
    EVGA GTX 1070 SC
    Here
     
  13. CalinTM

    CalinTM Ancient Guru

    Messages:
    1,684
    Likes Received:
    18
    GPU:
    MSi GTX980 GAMING 1531mhz
    Thanks I've set the scanline to - 10 and seems to be working.
     
  14. RealNC

    RealNC Ancient Guru

    Messages:
    4,894
    Likes Received:
    3,168
    GPU:
    RTX 4070 Ti Super
    Yes. Scanline sync should not be used together with vsync.
     
    khanmein likes this.
  15. xvt

    xvt Active Member

    Messages:
    55
    Likes Received:
    7
    GPU:
    MSI 3080 Suprim X
    Taking this opportunity to post a couple of questions about scanline sync, since I can't seem to be able to make an account on blurbusters.
    The release notes include this:

    Added alternate framerate limiting mode, based on synchronization with display rasterizer position. Now you may synchronize the framerate to up to two independent scanline indices per refresh interval.

    It mentions two independent scanline indices, yet it seems you only get one to move around.
    I'd have assumed that SyncScanline1 would take care of that, but whenever I change the value of SyncScanline1, it changes the SyncScaline method (as in refresh, half-refresh, 2x refresh).

    As my technical understanding of the method goes so far, does this mean that the second index is only available during 2x sync?

    Regarding multi-monitor setups: is there a way to prevent the scanline from moving whenever you're using more than one monitor other than turning one of them off?

    And last but not least, I've read some claims that the method stops being used if you alt-tab from the application, I can't say that's been my experience, but just asking to confirm I'm not experiencing placebo or my setup is an outlier. Either way, after I alt-tab back into the application I've made it a usual practice to hit Ctrl+Alt+R.
     

  16. RealNC

    RealNC Ancient Guru

    Messages:
    4,894
    Likes Received:
    3,168
    GPU:
    RTX 4070 Ti Super
    Yes. 2x sync will sync twice per refresh (so you get double the FPS), at two different scanline positions.

    As to how useful that is, I'm not sure. Scanline sync is useful for getting rid of tearing, but in 2x mode you can't hide both scanlines. If you try, the interval between the two becomes too small and there's no time for the game to render a frame that fast.

    Never had a problem.
     
  17. xvt

    xvt Active Member

    Messages:
    55
    Likes Received:
    7
    GPU:
    MSI 3080 Suprim X
    Thanks for the promptly reply.

    So I'm guessing there's no work around for multi-monitor setups then?
     
  18. RealNC

    RealNC Ancient Guru

    Messages:
    4,894
    Likes Received:
    3,168
    GPU:
    RTX 4070 Ti Super
    I don't know. I'm only using one. Sorry.
     
  19. yobooh

    yobooh Guest

    Messages:
    260
    Likes Received:
    15
    GPU:
    Gigabyte 970 G1
    For 30 FPS my best setups on a 1080p screen and exact 60,001 hz are:

    1) RTTS Scanline Sync X/2 with -10: No Tearing, Smooth and low Input Lag - Cons: GPU has not excede 70-80% or you will see tearing

    2) NVProfileInspector 1/2 Refresh rate (non Adaptive) + Pre-Rendered Frame= 1 - Cons higher Input Lag but stutter free and GPU can work at 99%
     
  20. Unwinder

    Unwinder Ancient Guru Staff Member

    Messages:
    17,083
    Likes Received:
    6,567
    Works fine with multiple monitors and target monitor index is selectable via profile. I documented it in development thread.
     
    yobooh likes this.

Share This Page