nVidia and triple bufering

Discussion in '3D Hardware, Software & Output Devices' started by Randell, Aug 12, 2004.

  1. Randell

    Randell Senior Daddy
    Veteran

    Joined:
    Feb 14, 2002
    Messages:
    1,869
    Likes Received:
    3
    Location:
    London
    I've seen some people complain about a lack of forced triple buffering option fro OGL in nVidia's drivers, especially iro D3. Rivatuner's frced option is also mentioned as not working.

    Is this true? Is there a workaround? Someone was complainign the 6800 may benchmaker higher, but they either play with vsync on and drop to 30fps a lot of the time or vsync off and have tearing. With TB on they should get 60, 45 or 30 (assume its a TFT).
     
  2. kyleb

    Veteran

    Joined:
    Nov 21, 2002
    Messages:
    4,165
    Likes Received:
    52
    ya, unfortunatly there is no triple buffering in opengl with nvidia cards at all. i'm a big fan of vsync so that makes for a big turn-off when it comes to nvidia cards for me.

    as for triple buffering just giving you 45 in between 60 and 30, that is not the case; it is a lot smoother than that. i don't have the technical understanding to explain exactly how it works, but hopefully someone here does.
     
  3. Skinner

    Regular

    Joined:
    Sep 13, 2003
    Messages:
    871
    Likes Received:
    9
    Location:
    Zwijndrecht/Rotterdam, Netherlands and Phobos
    I asked this for ages for Nv cards and openGL, but it never came :cry:
     
  4. Randell

    Randell Senior Daddy
    Veteran

    Joined:
    Feb 14, 2002
    Messages:
    1,869
    Likes Received:
    3
    Location:
    London
    well.. does that mean although the 6800Gt beats the X800Pro in benches, the X800pro is smoother with v-sync and TB?

    JVD can U do a compare?? :p
     
  5. Skinner

    Regular

    Joined:
    Sep 13, 2003
    Messages:
    871
    Likes Received:
    9
    Location:
    Zwijndrecht/Rotterdam, Netherlands and Phobos
    Yep in certain situations and settings yes.
     
  6. Randell

    Randell Senior Daddy
    Veteran

    Joined:
    Feb 14, 2002
    Messages:
    1,869
    Likes Received:
    3
    Location:
    London
    hmm as I have a 17" TFT and limited to 1280x1024 what settings are you talking about?
     
  7. SmuvMoney

    Newcomer

    Joined:
    May 24, 2003
    Messages:
    67
    Likes Received:
    0
    Location:
    Chicago, IL
    I will try to give a technical explanation of double and triple buffering with regard to vsync. I'll probably fail horribly and someone will explain it better than I can. :)

    Vsync & Double buffering:

    You essentially have two buffers that are written to for each screen refresh. The front buffer is the one is displayed, the one you actually see. The back buffer is the one being drawn to for the next refresh. The graphics card calculates what needs to be drawn. It then applies/saves it to the back buffer. Once the back buffer is saved, the API switches buffers so you can see the next refresh or image. With vsync on, the buffers are switched at a specific interval. This is called the frequency or refresh rate in Hz. For instance, if you have set your monitor and graphics card to 100 Hz, then the graphics card is supposed to flip buffers/refresh every 10 ms.

    Let's say you're playing your favorite game and running at 100 FPS with vsync on and double buffering. Now what happens if somehow the graphics card is unable to calculate the information to write to the back buffer fast enough? Since the back buffer is not ready yet, the swap does not occur. You are now forced to wait for the next swap, which is 10 ms later. You are now waiting 20 ms between refreshes. This forces the game to go 50 FPS to match the number of refreshes until the swaps can occur at 10 ms again. The end result of this is that your framerate can only be certain values. The basic formula for the possible FPS you'll be able to see is [max Hz/n] where n >= 1. In this example, your possible FPS values would be 100, 50, 33.33, 25, 20, 16.66, 14.42, 12.5, 11.11, 10, and so forth.

    Vsync On & Triple Buffering:

    With triple buffering and vsync, you have two back buffers. When the front buffer is displayed, the graphics card is calculating both buffers. which can be swapped at any time when requested. The API will calculate both buffers as needed. The API can request a buffer swap every 10 ms or anytime amount of time after that. This prevents the problem above - you don't have to wait until the next 10 ms to do a swap. This allows triple buffering to emulate any frame rate up to your refresh rate.

    I have to go, but this should explain the difference.
     
  8. Randell

    Randell Senior Daddy
    Veteran

    Joined:
    Feb 14, 2002
    Messages:
    1,869
    Likes Received:
    3
    Location:
    London
    thanks.

    Can anyone else confirm that they get tearing on their 6800's without vsync and unacceptable frame rate drops with it on?
     
  9. kyleb

    Veteran

    Joined:
    Nov 21, 2002
    Messages:
    4,165
    Likes Received:
    52
    well i can confirm that anyone will get tearing on any card without vsnyc on, as tearing is the visual result of the frames not being syncronized with the refresh. as for "unacceptable frame rate drops", that is simply a matter of what a person considers acceptable.
     
  10. Diplo

    Veteran

    Joined:
    Apr 17, 2004
    Messages:
    1,474
    Likes Received:
    64
    Location:
    UK
    In all my years of gaming I don't think I've ever noticed tearing from having vysnc off...
     
  11. Silence429

    Newcomer

    Joined:
    Jul 26, 2004
    Messages:
    19
    Likes Received:
    0
    I get VERY bad tearing in Call of Duty without V-SYNC being enabled, however have not noticed any in Doom3. Odd :?

    *edit* and no its not because i always have my eyes shut when playing doom3 :p
     
  12. kyleb

    Veteran

    Joined:
    Nov 21, 2002
    Messages:
    4,165
    Likes Received:
    52
    ya you get a lot higher framerate in cod i'd imagine, and the less framerate the less tearing you get so i'd imagine that is why you don't notice it as much in doom3.


    well then what do you notice tearing from? i'm guessing you just don't notice tearing at all, some people don't.
     
  13. Moloch

    Moloch God of Wicked Games
    Veteran

    Joined:
    Jun 20, 2002
    Messages:
    2,981
    Likes Received:
    72
    I noticed tearing and other rendering artififacts when I first installed the 4.9b, but now its fine.
    with 8500 64MB
     
  14. Randell

    Randell Senior Daddy
    Veteran

    Joined:
    Feb 14, 2002
    Messages:
    1,869
    Likes Received:
    3
    Location:
    London
    I was spefically asking about D3 on a 6800, in that real world gaming performance may be not be better than an X800Pro if the choice is tearing or vsync without TB.
     
  15. Skinner

    Regular

    Joined:
    Sep 13, 2003
    Messages:
    871
    Likes Received:
    9
    Location:
    Zwijndrecht/Rotterdam, Netherlands and Phobos
    You notice tearing very clear on vertical objects with bright backgrounds when turning. In Doom3 there aren't many of those spots so I didn't notice the tearing much. But in every other game I play with v-sync onn.
     
  16. DarN

    Regular

    Joined:
    Jan 19, 2004
    Messages:
    406
    Likes Received:
    1
    Location:
    Norway
    Same here. Odd indeed.
     
  17. habicht

    Newcomer

    Joined:
    Aug 13, 2004
    Messages:
    2
    Likes Received:
    0
    @SmuvMoney

    thanks a lot for your explanation!


    @Randell

    unfortunately, yes ...

    my System:
    Athlon64 3.0
    GF 6800 GT (Leadtek)
    1 Gig Ram (Corsair)
    (nothing overclocked)

    settings d3:
    1600x1200, High Details, NoAA, 8x AF

    fps timedemo1 (second run):
    vsync off: 56 fps (equal to the official id benchmarks with this card)
    vsync on: 39 fps

    so i get a loss of 17 fps with vsync on

    and the tearing is very extreme without vsync!! expacially by strafing around ...

    pls can anyone tell me the benches from an ati x800 with vsync and triple buffering on?

    'cause i think, that it is possible that the ati is faster with vsync enabled and so it is faster with doom3 and not as all benchmarks say the GF 6800 !!!

    - as i said ... YOU CAN't PLAY D3 WITHOUT VSYNC ENABLED

    ... so i think all benchmarks around which are made with vsync off (all benchamrks around ??) are obsolete (for D3) ...

    i hope that there is an solution very soon or i sell my GF 6800 and buy me an ATI card !!!!
     
  18. jimmyjames123

    Regular

    Joined:
    Apr 14, 2004
    Messages:
    810
    Likes Received:
    3
    With v-sync enabled, your framerate will apparently depend on your monitor's refresh rate (and hence, the framerate is variable).

    Triple buffering is not a perfect solution because of potential for additional lag.

    This is NV's response to the triple buffering issue:

    "NVIDIA hasn't ever supported triple buffering in the OpenGL driver. It adds a reasonable amount of driver complexity, an additional frame of lag / latency (for twitch games like Quake / UT, the additional time to see the response to your mouse/kbd movements can be very annoying), and no large OpenGL titles have requested it since 1998."

    http://www.beyond3d.com/forum/viewtopic.php?t=14427&highlight=
     
  19. Skinner

    Regular

    Joined:
    Sep 13, 2003
    Messages:
    871
    Likes Received:
    9
    Location:
    Zwijndrecht/Rotterdam, Netherlands and Phobos
    I rather have some lag with 60-84 fps, then 40's in framerate or tearing, but I guess its a personal choice.
     
  20. kyleb

    Veteran

    Joined:
    Nov 21, 2002
    Messages:
    4,165
    Likes Received:
    52
    well its a personal choice if you have a radeon anyway, otherwise you can let nvidia make up your mind for you. :x
     
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...