Bonsoir,
Ma question est toute simple, je voulais savoir si, pour une surface donnée avec son vecteur normal, il était nécessaire de recalculer sa normale avant chaque dessin ?
Bon, en considérant que la surface est stockée en mémoire dans un tableau.
Je vais faire un exemple simple :
Arrivé là, je voudrai savoir si la matrice s'applique aussi sur les normales, càd est-ce que si je fais une boucle pour faire tourner ma face, la lumière reflètera toujours correctement dessus ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 GLfloat vertices[] = { 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0 } GLfloat normals[] = { 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1 } GLuint indices[] = { 0, 1, 2, 3 } glVertexPointer(vertices); // Je mets pas tou les arguments parce que je m'en souviens pas encore par coeur :mrgreen: glNormalPointer(normals); glDrawElements(indices); glRotate*(); glClear(...); glDrawElements(indices);
Voilà, j'espère avoir été clair
Bonne soirée.
Partager