Announcement

Collapse
No announcement yet.

Triple Buffering in 3.7s....Why?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Triple Buffering in 3.7s....Why?

    I recently ran across the TB feature in OpenGL for the ATI CAT 3.7s. However, I was led to believe that if you enable AA via the CP, then you wouldn't be able to use TB. I made a post about it over at Driverheaven.net (here, includes all quotes and info where I read about it, etc), but no one seems to understand what's going on. I was wondering basically if it could be made clear if TB can be used when AA is enabled via the CP, and if you don't get TB with AA, then what does TB really do when AA is enabled? It must have some benefit or ATI wouldn't have gone to the trouble of adding it in the CP. Any info or comments would be appreciated.
    System Specs:
    Gigabyte 8INXP - Pentium 4 2.8@3.4 - 1GB Corsair 3200 XMS - Enermax 550W PSU - 2 80GB WDs 8MB cache in RAID 0 array - 36GB Seagate 15.3K SCSI boot drive - ATI AIW 9700 - M-Audio Revolution - 16x Pioneer DVD slot load - Lite-On 48x24x48x CD-RW - Logitech MX700 - Koolance PC2-601BW case - Cambridge MegaWorks 550s - Mitsubishi 2070SB 22" CRT

    Our Father, who 0wnz heaven, j00 r0ck!
    May all 0ur base someday be belong to you!
    Give us this day our warez, mp3z, and pr0n through a phat pipe.
    And cut us some slack when we act like n00b lamerz,
    just as we teach n00bz when they act lame on us.
    For j00 0wn r00t on all our b0x3s 4ever and ever, 4m3n.

  • #2
    Pop over to rage3d theres a huge debate over it and the reasons for it. A lot of users have asked for it so ATI have supplied it.
    Chief Lemon Buyer no more Linux sucks but not as much
    Weather nut and sad git.

    My Weather Page

    Comment


    • #3
      But most of them don't address this issue I'm asking about. Only one person over there posted about using AA with TB and concluded it wasn't possible (no one else really responded to it). So what good is TB if you use AA is my question. Does it affect gaming at all??
      System Specs:
      Gigabyte 8INXP - Pentium 4 2.8@3.4 - 1GB Corsair 3200 XMS - Enermax 550W PSU - 2 80GB WDs 8MB cache in RAID 0 array - 36GB Seagate 15.3K SCSI boot drive - ATI AIW 9700 - M-Audio Revolution - 16x Pioneer DVD slot load - Lite-On 48x24x48x CD-RW - Logitech MX700 - Koolance PC2-601BW case - Cambridge MegaWorks 550s - Mitsubishi 2070SB 22" CRT

      Our Father, who 0wnz heaven, j00 r0ck!
      May all 0ur base someday be belong to you!
      Give us this day our warez, mp3z, and pr0n through a phat pipe.
      And cut us some slack when we act like n00b lamerz,
      just as we teach n00bz when they act lame on us.
      For j00 0wn r00t on all our b0x3s 4ever and ever, 4m3n.

      Comment


      • #4
        Pretty sure the two aren't related. Are you thinking of trilinearing filtering???

        Triple buffering helps with frame rates when using vsync.

        "Now, if triple buffering is used with vsync, and that same 75hz refresh is used, the game can display EVERY frame that the video card can render, with the refreshrate itsself being the only limitation. That way, it'll be able to display 75,74,73,72,71,70,etc fps with no problem, keeping fps transitions between simple and complex scenes completely smooth and keeping the framerate high, even if the video card cant render exactly at the refresh rate."

        Of course that person maybe wrong.
        Chief Lemon Buyer no more Linux sucks but not as much
        Weather nut and sad git.

        My Weather Page

        Comment


        • #5
          But what is being said is that to use TB you can't have AA enabled because it uses one of the buffers that TB would need.

          Here is OpenGL Guy's quote:

          AA doesn't give triple buffering because you need both the AA buffer and a back buffer available at the same time, hence it's just like double buffering (assuming you only have two back buffers).
          You can read the whole thing here if you'd like.

          Here is a quote from Rage3D:

          I'm not confusing anything. I asked the EXACT same thing that the person in this thread is asking to an Ati employee that works in the Direct3D department. I have just said what he said.

          Not an exact quote but nonetheless he did say TB under the circumstances of FSAA is useless.

          Here is something that may give you an image:

          (1600 * 1200 * 4 * (1 (front buffer) + 1 (back buffer) + 1 (Z buffer) + 6(AA back buffer) + 6 (AA Z buffer)))

          Naturally there would be an option for 2 backbuffers but it isn't the case with FSAA.

          I am only telling you what OpenGL Guy told me. If it's the case that I have mixed something up and made an error then he will tell me. What I am 100% sure of is that TB is useless when FSAA is in use. That was made VERY clear to me.
          Am I missing something here??
          System Specs:
          Gigabyte 8INXP - Pentium 4 2.8@3.4 - 1GB Corsair 3200 XMS - Enermax 550W PSU - 2 80GB WDs 8MB cache in RAID 0 array - 36GB Seagate 15.3K SCSI boot drive - ATI AIW 9700 - M-Audio Revolution - 16x Pioneer DVD slot load - Lite-On 48x24x48x CD-RW - Logitech MX700 - Koolance PC2-601BW case - Cambridge MegaWorks 550s - Mitsubishi 2070SB 22" CRT

          Our Father, who 0wnz heaven, j00 r0ck!
          May all 0ur base someday be belong to you!
          Give us this day our warez, mp3z, and pr0n through a phat pipe.
          And cut us some slack when we act like n00b lamerz,
          just as we teach n00bz when they act lame on us.
          For j00 0wn r00t on all our b0x3s 4ever and ever, 4m3n.

          Comment


          • #6
            Single buffering: Videocard renders into the same memory that's being output to monitor, resulting in a horrific mess of flashing flickering wierdness unless the videocard can render the entire frame faster than the monitor can draw the image on the screen and is properly synced with it.

            Double buffering: Videocard renders into a different memory location, then when it's done it sits and waits for the monitor to do the vertical retrace before switching the video output to the completely rendered memory if vsync is on. If vsync is off it immediately switches it, and if the images aren't the same you'll end up with the top part of the image being different than the bottom (or more segments if the videocard can render enough frames per refresh.) If vsync is on and the rendering falls behind the refresh rate you'll end up with frames displayed twice or more, causing stutters as the visible frame rate jumps to various refreshrate divided by x integer frequencies.

            Triple buffering: The videocard renders to a buffer, then to another buffer, then while the videocard is rendering the third the monitor starts showing the first buffer. If the third frame that's being rendered takes longer than one refresh, the monitor still has one more complete frame to display. If the videocard gets the next frame done before the monitor catches up the framerate won't drop. But if the videocard stays bogged down the framerate will drop down, but it'll be closer to the actual rendering rate since the monitor doesn't have to wait on the rendering unless it's fallen so far behind that there isn't a second buffer waiting.

            More or less.

            Checking OpenGL triple buffering + AA on my 8500 now, should only take a moment.
            Last edited by Jon P. Inghram; 8 September 2003, 14:20.

            Comment


            • #7
              Just verified it... on a Radeon 8500 using Cat 3.7, OpenGL triple buffering DOES work just fine with and without AA.

              Their DX9 cards (r3xx series I guess) use different AA than the DX8 (r2xx) ones, so that might be the difference, if it really is happening.

              Comment


              • #8
                Ok, so how do I test it out with my 9700? What exactly do I look for?
                System Specs:
                Gigabyte 8INXP - Pentium 4 2.8@3.4 - 1GB Corsair 3200 XMS - Enermax 550W PSU - 2 80GB WDs 8MB cache in RAID 0 array - 36GB Seagate 15.3K SCSI boot drive - ATI AIW 9700 - M-Audio Revolution - 16x Pioneer DVD slot load - Lite-On 48x24x48x CD-RW - Logitech MX700 - Koolance PC2-601BW case - Cambridge MegaWorks 550s - Mitsubishi 2070SB 22" CRT

                Our Father, who 0wnz heaven, j00 r0ck!
                May all 0ur base someday be belong to you!
                Give us this day our warez, mp3z, and pr0n through a phat pipe.
                And cut us some slack when we act like n00b lamerz,
                just as we teach n00bz when they act lame on us.
                For j00 0wn r00t on all our b0x3s 4ever and ever, 4m3n.

                Comment


                • #9
                  I used Serious Sam and FRAPS to show the FPS. Force AA and v-sync on in the drivers. Load the game up and find a spot where the framerate drops in half due to v-sync (this is without TB on.) Save the game, quit, turn TB on in the drivers and reload the game to the same spot. If it's working you should be running at a higher framerate than before. That's a simple way to test it.

                  Comment


                  • #10
                    Yeah Anti Aliasing should be using a seperate dedicated buffer that is seperate from the normal off-screen framebuffers. So if done correctly, it won't interfere with the 2nd and 3rd framebuffer... just sucks up more of the vid card's memory.

                    Comment


                    • #11
                      Ok, I'll test it out tonight when I have some time and post results.
                      System Specs:
                      Gigabyte 8INXP - Pentium 4 2.8@3.4 - 1GB Corsair 3200 XMS - Enermax 550W PSU - 2 80GB WDs 8MB cache in RAID 0 array - 36GB Seagate 15.3K SCSI boot drive - ATI AIW 9700 - M-Audio Revolution - 16x Pioneer DVD slot load - Lite-On 48x24x48x CD-RW - Logitech MX700 - Koolance PC2-601BW case - Cambridge MegaWorks 550s - Mitsubishi 2070SB 22" CRT

                      Our Father, who 0wnz heaven, j00 r0ck!
                      May all 0ur base someday be belong to you!
                      Give us this day our warez, mp3z, and pr0n through a phat pipe.
                      And cut us some slack when we act like n00b lamerz,
                      just as we teach n00bz when they act lame on us.
                      For j00 0wn r00t on all our b0x3s 4ever and ever, 4m3n.

                      Comment


                      • #12
                        Does this mean that glquake is going to look even better on my 9000 Pro?
                        chuck

                        PS Can I request the title MURC Fogey for asking this?
                        Chuck
                        秋音的爸爸

                        Comment


                        • #13
                          Ok, well there is a part in Jedi Knight II where without enabling TB the fps goes down to 25 and kinda jumps between that and 30 when v-sync is on. With TB enabled, the fps stays around 27-32 (usually is at 30). It's a storyline part of the game (when he's in the Valley of the Jedi), so the scenes were the exact same each time I played them. So based on these results, would you say it was working?? I don't have any other OpenGL games installed expect for CS and Quake III right now. I probably should install Serious Sam II but don't have the time tonight. I'll post more results later on, but based on those can any conclusion be drawn?
                          System Specs:
                          Gigabyte 8INXP - Pentium 4 2.8@3.4 - 1GB Corsair 3200 XMS - Enermax 550W PSU - 2 80GB WDs 8MB cache in RAID 0 array - 36GB Seagate 15.3K SCSI boot drive - ATI AIW 9700 - M-Audio Revolution - 16x Pioneer DVD slot load - Lite-On 48x24x48x CD-RW - Logitech MX700 - Koolance PC2-601BW case - Cambridge MegaWorks 550s - Mitsubishi 2070SB 22" CRT

                          Our Father, who 0wnz heaven, j00 r0ck!
                          May all 0ur base someday be belong to you!
                          Give us this day our warez, mp3z, and pr0n through a phat pipe.
                          And cut us some slack when we act like n00b lamerz,
                          just as we teach n00bz when they act lame on us.
                          For j00 0wn r00t on all our b0x3s 4ever and ever, 4m3n.

                          Comment


                          • #14
                            Quake 3 v1.32 timedemo test in 1152x864x32@100Hz (com_maxfps set to 100), 16x AF performance, 4x AA:

                            vsync off, TB off- 219.6 fps
                            vsync on, TB off- 218.5 fps
                            vsync on, TB on- 222.3 fps

                            1152x864x32, no AF, no AA

                            vsync off, TB off- 256.3 fps
                            vsync on, TB off- 254.6 fps
                            vsync on, TB on- 256.8 fps
                            Last edited by Admiral; 9 September 2003, 02:32.

                            Comment


                            • #15
                              So what do the results tell us? I mean fps alone won't say much. TB is supposed to "stabalize" your fps I thought. Do you see spikes in fps more/less with TB on??
                              System Specs:
                              Gigabyte 8INXP - Pentium 4 2.8@3.4 - 1GB Corsair 3200 XMS - Enermax 550W PSU - 2 80GB WDs 8MB cache in RAID 0 array - 36GB Seagate 15.3K SCSI boot drive - ATI AIW 9700 - M-Audio Revolution - 16x Pioneer DVD slot load - Lite-On 48x24x48x CD-RW - Logitech MX700 - Koolance PC2-601BW case - Cambridge MegaWorks 550s - Mitsubishi 2070SB 22" CRT

                              Our Father, who 0wnz heaven, j00 r0ck!
                              May all 0ur base someday be belong to you!
                              Give us this day our warez, mp3z, and pr0n through a phat pipe.
                              And cut us some slack when we act like n00b lamerz,
                              just as we teach n00bz when they act lame on us.
                              For j00 0wn r00t on all our b0x3s 4ever and ever, 4m3n.

                              Comment

                              Working...
                              X