I understand VBOs are essentially memory that is stored on the graphics card rather circumventing the need to send the data every time.
My questions:
-
I heard that VBOs only support one texture. Is this one texture total or just one texture per rendering call? I have to render multiple BSP regions and they often have 3-4 textures per region. Could I simply create the VBO and just call drawelements 4 times with different textures bound. What is the performance hit for this?
-
Is there a maximum number of VBOs? I plan on having one attached to each region of BSP. In some levels, I can have 200-3000 regions. Would it be possible to have 3000 small VBOs attached to these various regions?
the number of textures you can have do not depend on the number of VBOs.
The number of textures that you can use in one rendering pass depend on the number of texture units you have. There are at least two of them but usually you have more.
As far as I know there is no restriction on the number of VBOs it just depends on the size of your graphic cards RAM.
But its more efficient to use less VBO’s.