seb_nachos
Messages postés7Date d'inscriptionsamedi 19 mars 2005StatutMembreDernière intervention22 juin 2005
-
12 avril 2005 à 15:57
dletozeun
Messages postés546Date d'inscriptionvendredi 13 février 2004StatutMembreDernière intervention 9 janvier 2008
-
18 avril 2005 à 22:27
Bonjour,
j'ai un gros probleme sur l'opengl !
Je dessine sur mon interface je recupere les coordonnées pixels,
puis je les normalise par rapport au centre de la fenetre.
j'ai donc deux coordonnées comprises entre -1 et 1 pour x et y.
Seulement maintenant je voudrais trouver la veritable valeur de ces points en opengl.
J'ai essaye avec des multiplications de matrices mais j'y arrive pas.
dletozeun
Messages postés546Date d'inscriptionvendredi 13 février 2004StatutMembreDernière intervention 9 janvier 20081 12 avril 2005 à 17:53
Oula pas tres clair tout ca....
Je comprends pas vraiment ton probleme....
Tu veux retrouver les coordonnées dans l'espace de chaque pixel ??
Si c'est ca renseigne toi sur le "picking" opengl propose des fonctions expres pour ca
barraq
Messages postés89Date d'inscriptionmercredi 25 juin 2003StatutMembreDernière intervention14 septembre 2007 13 avril 2005 à 09:56
Oui la je crois que moi aussi j'ai pas trop compris ton probleme
explique un peu mieux...
Dessine sur mon interface ? sa veut dire quoi , que tu a déja des
coordonées qqpart et que tu les afiche ? ou plutot que tu clique sur
l'ecran et sa affiche des points ?
dans le premier cas, c'est juste une petite gymnastique a faire avec les formules, un changement de base en gros.
Pour le deuxieme, la solution oui comme dit dletozeun, c'est le
picking, et pour cela gamestutorial a un bon tutorial, je pense que
NeHe aussi, donc regarde
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 20072 13 avril 2005 à 18:45
Regardes dans les posts, il y en a un qui s'appelle "PB Modeleur 3D" un truc comme ca... (peut etre plusieurs), mais le gars avait le meme probleme que toi, et je l'ai aide a resoudre son probleme, il a poste son code dans le topic, ca pourra t'aider.
(fais peut etre une recherche "gluUnProject").
Et fais gaffe parce qu'il utilise Qt, ca peut changer pour toi, notamment pour les coords fenetre.
seb_nachos
Messages postés7Date d'inscriptionsamedi 19 mars 2005StatutMembreDernière intervention22 juin 2005 13 avril 2005 à 22:19
voila des explications
j'ai une interface qt
je recupere les points de la souris
je les normalises (changement de repere tout con). (centre de ma fenetre)
puis je leur attribue une profondeur (z) dans ce repere.
j'ai donc des points normalisés en 3D.
Et je veux leur valeurs dans le monde opengl.
Je pense qu'il faut utiliser l'inverse de ModelView puis l'inverse de la matrice de projection ou un truc comme ca ! mais je ne sais pas exactement comment !
(pour unproject ca va pas car g des coordonnées 3D (x, y, z)).
Vous n’avez pas trouvé la réponse que vous recherchez ?
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 20072 13 avril 2005 à 23:26
Oui ben justement quand tu recuperes les coords souris tu peux calculer le points 3D via les matrices de modelview & projection et via la fonction gluUnProject, c'est exactement le pb qu'avait le gars du" modeleur 3D"...
A moins que je ne comprenne pas ce que tu veux, c'est ca.... sinon dis exactement ce que tu veux faire...
dletozeun
Messages postés546Date d'inscriptionvendredi 13 février 2004StatutMembreDernière intervention 9 janvier 20081 14 avril 2005 à 21:10
oui et ca s'appelle le picking!!
OpenGL fourni des fonction speciales pour ca! pas la peine de se casser la tete a inverser des matrices!
Suffit de trouver de bon tuts sur internet
Comme gamestutorial que proposait barraq
dletozeun
Messages postés546Date d'inscriptionvendredi 13 février 2004StatutMembreDernière intervention 9 janvier 20081 18 avril 2005 à 22:23
Ah oui je l'avais pas compris dans ce sens mais de toute facon les fonctions d'opengl pour le picking peuvent donner la position dans la scene 3D d'un pixel a l'ecran
dletozeun
Messages postés546Date d'inscriptionvendredi 13 février 2004StatutMembreDernière intervention 9 janvier 20081 18 avril 2005 à 22:25
Oui je l'avais pas compris dans ce sens la mais ca ne fait rien les fonctions de picking d'opengl parmettent de retrouver la position dans la scene 3D d'un pixel