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 :

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);
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 ?

Voilà, j'espère avoir été clair

Bonne soirée.