Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a few hundred VBOs, and I want to only draw a subset of the VBOs each frame.

Is there anything faster than binding and drawing each VBO? Is there a batched draw command for multiple VBOs?

  1. How do I bind multiple VBOs?

  2. Is there a version of glMultiDrawElements for sets of VBOs?

share|improve this question
Which GL version? – ltjax Apr 28 '11 at 9:05

Usually this is solved by trying to stuff as much as possible into a single VBO. You can store multiple, unrelated primitives/meshes in a single VBO and then separate them with array indices/ranges.

Binding multiple VBOs or drawing from a set of VBOs is not possible, AFAIK.

share|improve this answer

There is extension called primitive restart, which can maybe help you, but you will have to have only one big VBO.

Also - if you want to use multiple VBOs, you can try extension unified buffer memory, which is faster then binding.

But what I know, there is no way to draw multiple VBOs (you can have bound only one VBO at a time).

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.