[opengl dev cpp] Probleme de repere et de vue
Fermé
Wal
-
31 août 2006 à 22:40
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 4 sept. 2006 à 08:38
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 4 sept. 2006 à 08:38
A voir également:
- [opengl dev cpp] Probleme de repere et de vue
- Vue satellite en direct gratuit de ma maison - Guide
- Telecharger dev c++ - Télécharger - Langages
- Vue de profil instagram - Guide
- Massgrave dev - Accueil - Windows
- Dev home. - Télécharger - Développement
3 réponses
Rebonjour,
bon j'ai plus ou moins résolu mon problème.
mais je n'ai pas vraiment compris l'explication. j'ai juste remarqué quand changeant:
glRotatef(-angley,1.0,0.0,0.0);
glRotatef(-anglex,0.0,1.0,0.0);
par
glRotatef(angley,1.0,0.0,0.0);
glRotatef(anglex,0.0,1.0,0.0);
le repère devenait direct... anglex et angley sont des floatants mis en variables globales et leur valeur change en fait par action de la souris sur l'image afin de pouvoir faire pivoter ma figure. Donc si quelqu'un a l'explication de ce problème, ça m'interresse. (note: j'ai pensé à un moment qu'une rotation d'un angle -0.0 posait problème mais même en rajoutant
glRotatef(-angley+0.1,1.0,0.0,0.0) ça ne changeait rien)
bon j'ai plus ou moins résolu mon problème.
mais je n'ai pas vraiment compris l'explication. j'ai juste remarqué quand changeant:
glRotatef(-angley,1.0,0.0,0.0);
glRotatef(-anglex,0.0,1.0,0.0);
par
glRotatef(angley,1.0,0.0,0.0);
glRotatef(anglex,0.0,1.0,0.0);
le repère devenait direct... anglex et angley sont des floatants mis en variables globales et leur valeur change en fait par action de la souris sur l'image afin de pouvoir faire pivoter ma figure. Donc si quelqu'un a l'explication de ce problème, ça m'interresse. (note: j'ai pensé à un moment qu'une rotation d'un angle -0.0 posait problème mais même en rajoutant
glRotatef(-angley+0.1,1.0,0.0,0.0) ça ne changeait rien)
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
1 sept. 2006 à 08:24
1 sept. 2006 à 08:24
Attention, il faut vérifier si glRotate fait pivoter la camera OU le repère.
selon que c'est l'un ou l'autre, il est logique que ce que tu veux faire soit dans le mauvais sens.
selon que c'est l'un ou l'autre, il est logique que ce que tu veux faire soit dans le mauvais sens.
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
4 sept. 2006 à 08:38
4 sept. 2006 à 08:38
Salut.
J'ai ajouté ce code
et en fesant tourner ce repère, je l'ai bien vu direct (selon regle main droite).
Pour les angles, je persiste : si tu fait tourner la camera d'un angle x par rapport à z par exemple, tu aura le rendu inverse par rapport à si tu fait tourner ton repère du même angle !
J'ai ajouté ce code
glBegin(GL_LINES); glColor3f (1,0,0); glVertex3f ( 0, 0,0); glColor3f (1,0,0); glVertex3f ( 1, 0,0); glEnd(); glBegin(GL_LINES); glColor3f (0,1,0); glVertex3f ( 0, 0,0); glColor3f (0,1,0); glVertex3f ( 0, 1,0); glEnd(); glBegin(GL_LINES); glColor3f (0,0,1); glVertex3f ( 0, 0,0); glColor3f (0,0,1); glVertex3f ( 0, 0,1); glEnd();
et en fesant tourner ce repère, je l'ai bien vu direct (selon regle main droite).
Pour les angles, je persiste : si tu fait tourner la camera d'un angle x par rapport à z par exemple, tu aura le rendu inverse par rapport à si tu fait tourner ton repère du même angle !