Bonjour,
J'aimerais obtenir les coordonnées de ma souris dans ma scène 3D, cette partie je réussi à la faire grâce à la méthode suivante :
Cette méthode fonctionne que quand je n'effectue pas de rotation. A partir du moment où je vais effectuer une rotation, et bien les coordonnées en X et en Y obtenues sont aberrantes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 GLdouble modelview[16]; GLdouble projection[16]; GLint viewport[4]; // On remplis nos variables par les données d'OpenGL glGetDoublev(GL_MODELVIEW_MATRIX, modelview); glGetDoublev(GL_PROJECTION_MATRIX, projection); glGetIntegerv(GL_VIEWPORT, viewport); double wx1, wy1, wz1; GLfloat winY = viewport[3] - (GLint) y - 1; GLint response = gluUnProject( x, winY, 0.0, modelview, projection, viewport, &wx1, &wy1, &wz1);
Si quelqu'un voit d'où pourrait venir mon problème je lui en serais très reconnaissant, merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part glRotatef((GLfloat)angle,(GLfloat) ax,(GLfloat) ay,(GLfloat) az); // Appel la methode de rotaion d'openGL
Partager