• Advertisement
Sign in to follow this  

A few questions about VBOs

This topic is 3007 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

1) Should I be using the VBO functions with the ARB extension, or the ones without it? I'm confused because most of the tutorials use the ARB extension, but most of the papers I see on the issue don't use it. 2) How does the graphics device manage the memory it allocates for textures, buffers, etc? If I load a VBO with data, but then make another call to glBufferData later, will the driver automatically delete the old data? If that's the case, then the driver must keep track of how much memory it allocated for that specific VBO... is there any way to get that information? Thanks for the help. [Edited by - nsto119 on December 3, 2009 1:25:56 AM]

Share this post


Link to post
Share on other sites
Advertisement
1) Whichever, they work the same and on most drivers are the same too. If OpenGL 1.5 (which has VBO as core) is not present these days, something is probably wrong with that computer, so you're pretty safe to use the core functions.

2)The driver will keep the data even if you reassign the buffer for as long as the data is needed for any outstanding operations, and will then delete it.

3) glGetBufferParameteriv(...,GL_BUFFER_SIZE,...), although you normally don't have to bother.

Share this post


Link to post
Share on other sites
Cool, thanks.

I went to edit my post and deleted my 3rd question, then got sidetracked and forgot what it was, lol. At least you were paying attention :)

So, usually it's better to keep track of data like the length of a vertex buffer on the client side rather than query the device every time I want that data, right?

Share this post


Link to post
Share on other sites
Quote:
Original post by nsto119
So, usually it's better to keep track of data like the length of a vertex buffer on the client side rather than query the device every time I want that data, right?


I don't think you'd need to keep track of the entire size unless you really need it (I've not used it at anytime) but if your using more than vertices (normals/tex coords/custom data) then you will need to to store the byte offset of where each part of data begins so why not store the entire size too if you feel its needed.

Share this post


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

  • Advertisement