Je suis juste de commencer à apprendre l'OpenGL aujourd'hui de ce tutoriel: http://openglbook.com/the-book/
Je suis au chapitre 2, où je dessine un triangle, et je comprends tout à tout sauf à la VAOs (est-ce que cet acronyme OK?). Le tutoriel a ce code:
glGenVertexArrays(1, &VaoId);
glBindVertexArray(VaoId);
Bien que je comprenne que le code est nécessaire, je n'ai aucune idée de ce qu'il fait. Bien que je n'utilise jamais VaoId-delà de ce point (sauf pour le détruire), le code ne fonctionne pas sans elle. Je suppose que c'est parce qu'il est nécessaire d'être lié, mais je ne sais pas pourquoi. N'exacte de ce code juste besoin d'être une partie de chaque programme OpenGL? Le tutoriel explique VAOs:
Un Sommet de la Matrice de l'Objet (ou le VAO) est un objet qui décrit la façon dont le sommet attributs sont stockés dans un Vertex Buffer Object (ou VBO). Cela signifie que le VAO n'est pas l'objet réel de ranger le vertex, mais le descripteur du vertex. Vertex attributs peuvent être décrites par les glVertexAttribPointer de la fonction et de ses deux sœurs fonctions glVertexAttribIPointer et glVertexAttribLPointer, la première que nous allons aborder ci-dessous.
Je ne comprends pas comment le VAO décrit le sommet des attributs. Je n'ai pas décrit en aucune façon. Est-il obtenir l'information à partir de la glVertexAttribPointer? Je suppose que ce doit être ça. Est le VAO simplement une destination pour les informations de glVertexAttribPointer?
Sur une note de côté, est le tutoriel, je suis acceptable? A quoi dois-je regarder pour, une meilleure tutoriel à suivre?