5
\$\begingroup\$

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?

\$\endgroup\$
1
  • \$\begingroup\$ Which GL version? \$\endgroup\$
    – ltjax
    Apr 28, 2011 at 9:05

2 Answers 2

2
\$\begingroup\$

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.

\$\endgroup\$
2
\$\begingroup\$

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).

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .