Ensias
Messages postés31Date d'inscriptionmercredi 21 juillet 2004StatutMembreDernière intervention15 décembre 2006
-
29 août 2005 à 17:26
neodelphi
Messages postés442Date d'inscriptionjeudi 4 avril 2002StatutMembreDernière intervention11 août 2008
-
31 août 2005 à 19:04
Salut tous le monde, je viens de commencer Opengl et j'ai ecris un petit programme qui dessine un cube qui est en rotation autour de lui meme et qui est eclairé par une source lumineuse.Voila le code:
void Dessin1(void)
{
float Pos[]={1,1,2,1};
glClearColor(0,0,0,0);
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glLightfv(GL_LIGHT0,GL_POSITION,Pos);
glTranslatef(0,0,-8);
glRotated(angle,0,1,0);
glBegin(GL_QUADS);
glVertex3i(-2,-2,-2);
glVertex3i(-2,-2,2);
glVertex3i(2,-2,2);
glVertex3i(2,-2,-2);
glEnd();
glutSwapBuffers();
}
Mais je ne comprends pas pourquoi la source lumineuse tourne elle aussi .
Est ce que qlq'1 à une idée.
Merci
neodelphi
Messages postés442Date d'inscriptionjeudi 4 avril 2002StatutMembreDernière intervention11 août 2008 29 août 2005 à 23:27
Je pense que tu n'utilise pas la bonne matrice: lorsque tu utilise GL_MODELVIEW je pense que tu fait bouger la vue, la camera, et donc le cube est fixe mais tu as l'impression qu'il tourne, alors qu'en fait c'est toi qui tourne autour du cube (tout est relatif mais bon).
Regarde si ya pas une matrice GL_WORLD ou kekchose avec WORLD...
cs_keil
Messages postés52Date d'inscriptionjeudi 22 mai 2003StatutMembreDernière intervention25 octobre 2005 31 août 2005 à 12:07
Ahhh ce fameux probleme !! je l'ai rencontré aussi par contre je me souviens plus vraiment comment je l'ai résolu.
En regardant un de mes progs je peux dire que faut une certaine
distance entre la source et l'objet, qu'il vaut mieux ne pas trop
utilisé la lumiere ambiante si on veut se rendre compte des effets. En
regardant ton code, je pense qu'il serait bien de définir les normales
de tes quads (juste avant chaque groupe de glVertex, tu place un
glNormal avec les arguments qu'il faut)
Si ca marche toujours pas je verrai plus approfondément. Mais c'est
vrai que quand j'ai tenté de me documenté sur le net j'ai vu pas mal de
solution bricolage et j'ai trouvé ca pas programmatiquement correct!