zbouirf poukram et dre dans le pentu | Salut Stan,
Cela dépend de l'aspect que tu veux donner à ton angle : lissé ou marqué.
Utilise comme normale pour les vertex (0,0,0) et (0,0,1) la moyenne des 2 autres normales : glNormal3d (1,1,0).
Code :
- glBegin (GL_TRIANGLE_STRIP);
- glNormal3d (0,1,0);
- glVertex3d (1,0,0);
- glVertex3d (1,0,1);
- glNormal3d (1,1,0);
- glVertex3d (0,0,0);
- glVertex3d (0,0,1);
- glNormal3d (1,0,0);
- glVertex3d (0,1,0);
- glVertex3d (0,1,1);
- glEnd ();
|
Utilise deux triangle_strip, un pour le côté (Ox, Oz) et un autre pour le côté (Oy, Oz). Dans chacun des cas, utilise pour tous les points de la face, la même normale. L'inconvénient de procéder ainsi, est la duplication des points de l'angle entre les deux surfaces...
Code :
- glBegin (GL_TRIANGLE_STRIP);
- glNormal3d (0,1,0);
- glVertex3d (1,0,0);
- glVertex3d (1,0,1);
- glVertex3d (0,0,0);
- glVertex3d (0,0,1);
- glEnd ();
- glBegin (GL_TRIANGLE_STRIP);
- glNormal3d (1,0,0);
- glVertex3d (0,0,0);
- glVertex3d (0,0,1);
- glVertex3d (0,1,0);
- glVertex3d (0,1,1);
- glEnd();
|
Voila, j'éspère que ceci répondra à ta question... |