1 pièce(s) jointe(s)
probleme lumiere position & direction
Salut...
Je developpe sous delphi et voici mon probleme.
Je declare ceci:
Code:
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 ); |
ensuite je parametre mes source de lumiere comme ceci
Code:
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); |
et j'obtient ceci:
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