Jump to content
  • Advertisement
Sign in to follow this  
Kambiz

OpenGL triple buffering in opengl

This topic is 4649 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I was just reading sgi’s documentation about “wglGetPixelFormatAttribivARB” when I found this: “Should we add support for triple buffering? No, triple buffering needs to be covered by a separate extension.” Can someone tell me the extension covering triple buffering?

Share this post


Link to post
Share on other sites
Advertisement
I could not found anything relevant in Extension Registry... I always thought OpenGL is going to support everything before Direct3D because of the extensions!
Anyway, if you know how to do triple buffering in OGL so please tell be about.

Share this post


Link to post
Share on other sites
mmm... i would bet that it's platform dependent... for instance its probably possible to make the window of the rendering context tripple buffered.. but i dont know.

Share this post


Link to post
Share on other sites
Your driver may decide to perform triple buffering internally (I think it usually does on recent GPUs). AFAIK there's currently no way to control whether it does or not.

Share this post


Link to post
Share on other sites
Quote:
Original post by Sneftel
Your driver may decide to perform triple buffering internally (I think it usually does on recent GPUs).

That's correct. Some drivers might expose a user controllable hint in the graphics driver control panel.

Quote:
Original post by Sneftel
AFAIK there's currently no way to control whether it does or not.

There is no way, and there should be no way. Whether triple buffering is used or not is none of the application developers business.

Share this post


Link to post
Share on other sites
Quote:
Original post by AAAP
Question:

why is it no business to the developer? just curious.

Because there is no benefit in letting him control it. On the other hand, there is a lot of benefit in letting the driver control it exclusively, since the driver has access to internal information (memory layout and usage, performance data, etc) the user doesn't have or want access to. The driver is also able to switch triple buffering on/off on the fly, depending on the current situation.

This is comparable to resources such as textures. In the old days, there was a way to query the residency status of textures by the developer. Today, this feature is meaningless due to resources being managed entirely by the driver.

Share this post


Link to post
Share on other sites
>>> In the old days, there was a way to query the residency status of textures by the developer. Today, this feature is meaningless due to resources being managed entirely by the driver.

The functions glAreTexturesResident() and glPrioritizeTextures() are now 'meaningless'? Am I understanding you correctly? I'm not challenging the statement (as I don't know one way or the other), I've just never heard that before.

Share this post


Link to post
Share on other sites
Quote:
Original post by berith
The functions glAreTexturesResident() and glPrioritizeTextures() are now 'meaningless'? Am I understanding you correctly?

Yes. Do not use these functions, they are obsolete. It is best not to interfere with managed resources in any way on modern hardware. That's why newer managed extensions (such as VBOs) don't even expose such a functionality.

glAreTexturesResident() will return a meaningless value, because the interpretation of residency is completely manufacturer dependent and non-standard. glPrioritizeTextures() will most likely be completely ignored by modern drivers.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!