Bonjour,

Je travaille sur un programme de visualisation scientifique base sur OpenGL et j'ai un probleme avec la lumiere. Jusqu'ici, je definissais ma matrice modelview de telle sorte que mes objets tombent dans le cube [-0.5 0.5 -0.5 0.5 -10 10] et puis je faisais:

glOrtho(-0.5, 0.5, -0.5, 0.5, -10, 10);
glViewport(0, 0, width, height);

L'eclairage etait OK. Recemment, j'ai change mes transformations pour que ma matrice modelview "mappent" mes coordonnees objet directement en coordonnees fenetre et puis je fais:

glOrtho(0, width, height, 0, 1000, -1000);
glViewport(0, 0, width, height);

Mais l'eclairage ne marche pas: j'ai juste la lumiere ambiante, la diffuse et speculaire n'a pas l'air d'apparaitre. Les normales sont identiques et j'active GL_NORMALIZE dans les 2 cas.

Qu'est-ce qui peut provoquer cela? Merci.

PS: Pour info, dans le premier cas, la matrice modelview est

0.00366 -0.00281 0.00000 -0.00084
0.00121 0.00158 0.66993 0.00000
-0.00439 -0.00573 0.80760 -8.66025
0.00000 0.00000 0.00000 1.00000

dans le deuxieme cas, elle est

2.16429 -1.66071 0.00000 295.00000
-0.57461 -0.74884 -316.87822 238.00000
0.00439 0.00573 -0.80760 8.66025
0.00000 0.00000 0.00000 1.00000