Coordonnees opengl d'un clic de souris

cs_sheeper Messages postés 16 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 octobre 2005 - 2 mai 2004 à 14:14
cs_sheeper Messages postés 16 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 octobre 2005 - 3 mai 2004 à 17:57
Bonjour,
J'aimerais savoir comment convertir les coorddonnes d'un clic de souris (donc relative a l'ecran) en coordonnes correspondantes pour ma fenetre en opengl afin de pouvoir dessiner un point par exemple a l'endroit ou je clique. Je n'utilise pas glut et je travaille en 3d sous visual c++.
Merci
@++

6 réponses

cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
2 mai 2004 à 15:31
c'est quoi le probleme plus precisement ?

tu ve faire quoi ?

si tu ve savoir sur quel objet 3d pointe la souris utilise le picking

http://glinfrench.apinc.org/article.php3?id_article=83
0
cs_sheeper Messages postés 16 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 octobre 2005
2 mai 2004 à 15:37
Je veux pas faire de picking pour l'instant, tout ce que je veux c que les coordonnees de mon clic de souris (par exemple 200,200) soient convertis en coordonnees du repere de la fenetre opengl (le point 0,0,0 du repere ne correspond pas a un clic en 0,0 !!!).
0
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
2 mai 2004 à 15:38
eu... pourquoi tu passe pas en mode ortho?
0
Galmiza Messages postés 573 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 9 avril 2008 1
2 mai 2004 à 21:31
Je suis newbie, donc faut pas s'attendre a des trucs formidables.

Tu peux programmer ta propre routine (nan t'en fais pas pour moi, c'etait facile a dire). Tu fais une sorte de detection de collision entre la droite qui passe par ton point et le centre de la projection, et tous les objets.

Evidemment faut que ca aille vite, mais a mon avis cette methode est performante (j'en ai pas encore fait) meme si il y a des centaines d'objets dans la scene. Pour 1000 objets dans la scene, ca prendrait pres de 1ms (estimation de newbie). C'est pas genant car la routine n'est appelée qu'a chaque rendu de frame (toute les 16 ms pour 60 fps).

Pour cela, il faut que tu connaisse tous les vertices des objets.
Moi je fais de la 3D, mais avec des pieces elementaires pour l'instant, mais pour les pieces importées de 3DSMAX (dont on n'a pas aisement les vertices)... ca doit etre plus compliqué.

Au fait, sans etre indiscret, c'est pour quoi faire ton programme?
Un jeu comme Morrowind (avec plein d'objets)? Un moteur physique (pour tirer les objets)? Un logiciel de developpement 3D ?

(je ne sais pas ce que c'est le picking)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
2 mai 2004 à 21:40
le picking c'est faire ce que tu dit mais geré par opengl, donc ya pas plus optmisé
0
cs_sheeper Messages postés 16 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 octobre 2005
3 mai 2004 à 17:57
Salut
lol
Effectivement ca marche bcps mieux avec glOrtho....... :blush)
Et sinon pour repondre a galmiza je crois que je suis encore plus newbie que toi alors pour le moment je vais surtout me rejouir de savoir faire ca ;) . Bon apres je vais essayer de me faire un (tout) petit prog de dvlpmt 3d mais comme tu peux le voir c pas gagner....
lol
@++ et merci
0
Rejoignez-nous