Archived

This topic is now archived and is closed to further replies.

QWERTY

Tripple buffering in OpenGL

Recommended Posts

DeschutesCore    122
As I understand it, there are multiple buffers in OpenGL:

Color buffers: Front buffer(s) and Back buffer(s)
Z (Depth) buffer:
Stencil buffer:
Accumulation buffer:
Selection Buffer:

nVidia defines Triple Buffering as:
"A step beyond double buffering (see above definition), triple buffering uses an additional back buffer to process the next image, resulting in smoother animation."

Are you refering to adding an additional Color Buffer?

As far as I can tell, Triple-Buffering is a 3d accelerator buzzword. If anyone knows, please post because I''m dying to know if this is possible now, I have found nothing on creating addition back buffers.

Jason

Share this post


Link to post
Share on other sites
zedzeek    528
this is an os (ie not opengl) thing but AFAIK windows or linux aint able to expose tripple buffering at this time

http://members.xoom.com/myBollux

Share this post


Link to post
Share on other sites
QWERTY    122
I know this is an os dependant feature. This is the reason why I am asking this question. The only way I know is to use DirectDraw together with OpenGL. So you setup tripple buffering scheme using DDraw and then using those two back buffers for rendering with OpenGL. But I heared there may be some problems using this aproach on some gfx cards. Anybody has some experiences with tripple buffering in OpenGL? Any help would be appreciated.



Edited by - QWERTY on January 31, 2001 8:55:54 AM

Share this post


Link to post
Share on other sites
Guest Anonymous Poster   
Guest Anonymous Poster
As far as I know, you can''t use triple buffering in OpenGL. You can use it in Direct3D, but that''s not what''s being asked.

- Peter

Share this post


Link to post
Share on other sites
merlin9x9    174
Triple buffering in OpenGL ends up being a driver issue, not an OS issue. Because of OpenGL''s very abstract definition, practically no platform-specific details are exposed. In Win32, for example, all you have to show the back buffer is SwapBuffer. Now, in the NVIDIA control panel thingy, there''s a little option to switch between page flipping and back buffering; they''d only need to add an option for triple buffering. The call to SwapBuffer would access the mechanism in the driver to swap buffers, and the driver would then do the triple buffering. In other words, things like triple buffering are little details left to driver and OS binding implementations, not the actual API.

Direct3D, on the other hand, presents every damned little detail, so directly supporting such things is a "simple" matter of calling a few million methods after setting up 10 pages of code filling structures. =)

Share this post


Link to post
Share on other sites