Salut...
Je developpe sous delphi et voici mon probleme.
Je declare ceci:
ensuite je parametre mes source de lumiere comme ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Light_Model : Array[0..3] Of GLfloat = (1,1,1, 1.0 ); Lumiere_blanche : Array[0..3] Of GLfloat = (1,1,1, 1.0 ); Lumiere_violet : Array[0..3] Of GLfloat = (0.6,0.2,1, 1.0 ); Lumiere_Position : Array[0..3] Of GLfloat = (-2.0, 0.0, 0.0, 1.0 ); Lumiere_Direction : Array[0..3] Of GLfloat = (0, 0.0, 0.0, 1.0 );
et j'obtient ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 glLightfv(GL_LIGHT0,GL_POSITION,@Lumiere_Position); glLightfv(GL_LIGHT0,GL_DIFFUSE ,@Lumiere_blanche); glLightfv(GL_LIGHT0,GL_SPECULAR,@Lumiere_violet); glLightfv(GL_LIGHT0,GL_AMBIENT ,@Lumiere_violet); glLightfv(GL_LIGHT0,GL_SPOT_DIRECTION,@Lumiere_Direction); glLightModelfv(GL_LIGHT_MODEL_AMBIENT,@Light_Model); glEnable(GL_LIGHTING); glEnable(GL_LIGHT0); glEnable(GL_DEPTH);
http://www.developpez.net/forums/att...1&d=1145870051
Le carré jaune symbolise la source de lumiere et le carré rouge sa direction.
Mon probleme, vous l'aurais peut-etre remarqué, vient du fait que les position et direction de la
source lumineuse ne correspondent pas du tout aux positions des carrés.
On voit clairement que celle-ci vient plutot du coin superieur gauche.
Si quelqu'un a deja eu ce soucis, ou si quelqu'un voit d'ou cela peut venir
Alors n'hésitez pas à vous faire connaitre
(On dirai un algo)
D'avance merci
Partager