Je fais des tests avec OpenGL ES 2 et j'ai des questions, mon programme actuel est comme ça:
Init
-------
-> create index buffer
-> fill index buffer glBufferData …
-> create vertex buffer
-> fill vertex buffer glBufferData …
Draw
-------
1. Apply vertex buffer
-> Bind VAO
-> bind vertex buffer
- enable attributs (glVertexPointer, …)
-> unbind vertex buffer
-> Unbind VAO
-> Bind VAO
3. Apply index buffer
4. Draw
Le problème
Le crash de code donné, après quelques recherches, j'ai compris pourquoi: j'ai besoin de dissocier mon tampon d'index dans la partie init (après "remplir le tampon d'index glBufferData") ou de le dissocier avant le premier "Bind VAO"
Mes questions sont:
- Puis-je mettre mon tampon d'index en VAO (VAO stock index buffer?)?
- Dois-je dissocier les tampons après chaque mise à jour (glBufferData)?
Dans mon application, j'ai des tampons qui sont mis à jour sur chaque image (Exemple: Particles) donc j'ai une pile OpenGL comme ça:
-> bind buffer 1
-> update buffer 1
-> close buffer 1
-> bind buffer 1
-> draw
Les 3 premières lignes mettent à jour le tampon Vertex, les deux derniers objets dessinés, cela devrait être quelque chose comme ça:
-> bind buffer 1
-> update buffer 1
-> draw
Merci