VAO and VBO permutations

Thanks for the answer, i thought about it and i think for now is too far away from my actual situation, i have other things to work with.
Coming back on planet OpenGL what are the pros/cons of using one single VAO and multiples VBOs, which combination guarantees highest performance?

  • multiples VAOs and VBOs
  • one VAO multiples VBOs
  • multiples VAOs one VBO
  • other solutions that you might use

Again thanks for the time you are dedicating to me.

Coming back on planet OpenGL what are the pros/cons of using one single VAO and multiples VBOs, which combination guarantees highest performance?

You should be advised that you can specify vertex formats separately from the buffers that use them, on more recent implementations. The extension specifically states (in the issues section) that it’s expected that changing the buffer binding will be far cheaper than changing the vertex format. So in theory, the expected way to use this functionality is to change VAOs only for different vertex formats.

Some related info I found out years back. NOTE: NVidia specific:

:wink: Heh heh. Nice try! OpenGL makes no guarantees on performance. That’s up to the GL driver implementation. So I’d strongly encourage you to verify or refute anything you read on the GPU hardware and drivers that matter to you.

oh well, i tried. I immagine i’m going to read a lot.

EDIT:
After some reading i think the approach that better fits to my situation is one VAO and multiples VBOs. ( i will think to a better approach in the future )
Now concerning VBOs, i’m thinking to the situation when a user (i mean of the editor) wants to modify a texture of the model, it’s, divide the model into a VBO for every Material/Texture while editing and when editing is finished use a texture atlas and bind the model into one VBO, a good choice ? are there other solutions?

I know i’m asking lot of stuff but since you are “Guru” i want to take advantage of your experience