bonjour à tous,
Dans le cadre d'un développement sur une appli de visualisation d'objet 3D, je me permet de laisser ce poste afin que vous éclairiez ma lanterne concernant un point spécifique d'openGL que j'ai encore du mal a me représenter :
LES VAOs
J'ai fait pas mal de recherche a ce sujet avant de poster ceci, mais je vous avoue que ça me parait vraiment abstrait.
d'après le tuto a l'adresse suivante : https://tcuvelier.developpez.com/tut...0version%203).
Mais n'est ce pas le but de la VBO?Un VAO est une manière de stocker des informations sur les objets dans la carte graphique, au lieu de lui envoyer des sommets au fur et à mesure des besoins.
Ou alors est-ce les informations suivantes qui sont sauvegardé dedans (en plus des vbo) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 glVertexAttribPointer(PROGRAM_VERTEX_ATTRIBUTE, 3, GL_FLOAT, GL_FALSE, 5 * sizeof(GLfloat), (GLvoid*)0); glEnableVertexAttribArray(PROGRAM_VERTEX_ATTRIBUTE); glVertexAttribPointer(PROGRAM_TEXCOORD_ATTRIBUTE, 2, GL_FLOAT, GL_FALSE, 5 * sizeof(GLfloat), (GLvoid*)(3 * sizeof(GLfloat))); glEnableVertexAttribArray(PROGRAM_TEXCOORD_ATTRIBUTE);
A ce moment là faut-il créée : 1 objet -> 1vbo -> 1vao ?
Pourtant, j'ai lu également l'information suivante :
Comment faire pour utiliser plusieurs VBO en même temps?Il s'agit des vertex array objects, un seul pouvant stocker plusieurs VBO. Grâce à cette fonctionnalité, on peut stocker les données des sommets et des couleurs dans des VBO différents, mais dans le même VAO.
je ne pense pas être très loin de la réalité dans mes suppositions mais dans le doute je préfère demander.
J'avais suivi des tutoriels il y a un certain temps sur openGL mais avec l'ancienne manière de faire. Il semble à présent que les VAO deviennent fortement recommander, du coup je préfère me mettre à jours.
Je vous remercie d'avance pour vos réponses
et vous souhaite de passer de bonnes fêtes de fins d'année
Partager