Jump to content


why triple buffer?


3 replies to this topic

#1 EvilSmile

    Member

  • Members
  • PipPip
  • 96 posts

Posted 20 October 2003 - 04:16 AM

Hey folks,

I know why we have double buffering. The other day, I was talking to one of my pals and we couldn't come to a conclusion about why we need triple buffers.

Could someone shed some light on this...

Thanks

S_ES

#2 davepermen

    Senior Member

  • Members
  • PipPipPipPip
  • 1306 posts

Posted 20 October 2003 - 08:32 AM

if you have vsync enabled, doublebuffering stalls when you do the swap, taking away cpu and gpu cycles to wait till you can swap the image to screen.

you don't have this with trible buffering (well, you still have, but only for a minimal time).

so you're not limited to 60fps or similar like before when using vsync. the screen will still display only 60fps. but that way, you can get 100% cpu power back again. wich can be important.
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

#3 EvilSmile

    Member

  • Members
  • PipPip
  • 96 posts

Posted 20 October 2003 - 12:16 PM

davepermen said:

if you have vsync enabled, doublebuffering stalls when you do the swap, taking away cpu and gpu cycles to wait till you can swap the image to screen.

you don't have this with trible buffering (well, you still have, but only for a minimal time).

so you're not limited to 60fps or similar like before when using vsync. the screen will still display only 60fps. but that way, you can get 100% cpu power back again. wich can be important.
Could you elaborate upon that.
i.e, is it constantly drawing by alternating between the two backbuffers or is it drawing in the two backbuffers and waitign for the drawing to finish to start drawing again....
(or is it something completely different?)

#4 davepermen

    Senior Member

  • Members
  • PipPipPipPip
  • 1306 posts

Posted 20 October 2003 - 01:41 PM

on swapbuffers it normally waits for vsync (if enabled). now it doesn't, and at vsync it copies to a third buffer, wich is the primary buffer..

that way you don't get the stall
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users