2 Création d'un VAO

Contrairement aux VBO, les VAO seront très simples à configurer et à utiliser. Nous n'aurons pas besoin d'allouer de mémoire vidéo ni de faire des transferts de données, il suffira juste de faire des opérations que l'on connaît déjà.

On commence d'ailleurs avec la création du VAO grâce l'habituelle fonction de génération d'identifiant glGenXXX(). Elle s'appelle ici glGenVertexArrays() :

1
void glGenVertexArrays(GLsizei number, GLuint *arrays);
  • number : Le nombre d'ID à initialiser, nous lui donnerons la valeur 1
  • arrays : Un tableau de GLuint ou l'adresse d'une seule variable du même type. Nous lui donnerons l'adresse du VAO

Nous devons l'appeler juste après la configuration du VBO avec les paramètres donnés ci-dessus :

1
2
3
4
5
// Création du VBO
....

// Génération de l'ID du VAO
glGenVertexArrays(1, &vaoID);

Où, vaoID est un GLuint.