VBO pereformance questions

I have an application running on Windows 2000 with nVidia FX1000 (driver version 53.03). I have recently experimented with VBOs to render lines. I have made sure that buffers are loaded only once and that the data is not modified. I make a call to bind the buffer every frame. I have several buffers.

I have observed the following performance problems.

  1. If I use glArrayElement with VBOs the frame rate drops down to 0.2fps. The same code without the VBOs gives me 30fps. If I use glDrawElements in conjunction with VBOs the frame rate goes up to 45fps.
  2. If the databuffer that I bind to VBO is larger than a certain size (I haven’t yet figured out what size causes the problem) the frame rate drops down to 0.2fps.

I have the following questions.

  1. Why is use of glArrayElement causing slow down with VBOs? Shouldn’t the same code run faster with VBOs than without them?
  2. Is there a limitation on the size of the buffer that I can have? Should I be somehow querying the system for the maximum buffer size and live within that?
  3. Is there any limitation on the number of buffers I can have in the application?
  4. Should I be “unbinding” the buffer (by binding buffer 0) once I am done with it. I have noticed crashes if I try to specify a valid data pointer with glVertexPointer without “unbinding” previously bound buffer.
  5. I am using GL_ARB_vertex_buffer_object extension. Would this continue to work in OpenGL 1.5? nVidia’s latest driver has OpenGL 1.5 support.


The following infomation is based on the GDC04 presentation by ATI ( OpenGL Performance Tuning )

  1. they state ‘dont use glArrayElement’, reasons why are given in the video, but the slow down you see if one such reason
  2. your limit is probably the amount of memory, however its adviced not to have lots of small buffers or one large one, as to what size is best, experiment time i guess
  3. no limit as far as i know, however having lots of them apprently isnt a good thing
  4. yes, you should do, see examples at the end of the VBO spec
  5. yes, it will afaik

For some reason, that performancetuning.pdf file at ati.com isn’t working… or at least it doesn’t work for me.

If anyone knows of another source or has a working copy of it, send me a private msg or something


Works for me. Right-click, save-as?

Hmm odd, acrobat jsut tells me the viewer cannot decrypt this document… at any rate this isnt a pdf support forum so I’ll just try another machine