Glut et clavier

Signaler
Messages postés
99
Date d'inscription
mercredi 12 mai 2004
Statut
Membre
Dernière intervention
29 mars 2006
-
Messages postés
65
Date d'inscription
dimanche 27 juillet 2003
Statut
Membre
Dernière intervention
21 avril 2006
-
Bonjour j'utilise actuellement GLUT dans un programme OpenGL. Je
cherche à savoir comment récupérer la touche materielle que est
pressée. En gros avoir la même chose pour 'A' et 'a' pour '1' et
'&' ...

Je veut que mon programe soit portable donc pas d'API windows.

6 réponses

Messages postés
65
Date d'inscription
dimanche 27 juillet 2003
Statut
Membre
Dernière intervention
21 avril 2006

Il te suffit de mettre un message quand tu appuies sur une touche :

void OnKey(unsigned char key, int x, int y)
{
printf("numero de la touche pressée %d",key);

}

sinon pour les touches courantes, il est mieux d'utiliser :
http://www.yindo.com/docs/runtime/Glut.html


constants: GLUT_KEY_F1
GLUT_KEY_F2
GLUT_KEY_F3
GLUT_KEY_F4
GLUT_KEY_F5
GLUT_KEY_F6
GLUT_KEY_F7
GLUT_KEY_F8
GLUT_KEY_F9
GLUT_KEY_F10
GLUT_KEY_F11
GLUT_KEY_F12

GLUT_KEY_LEFT
GLUT_KEY_UP
GLUT_KEY_RIGHT
GLUT_KEY_DOWN

GLUT_KEY_PAGE_UP
GLUT_KEY_PAGE_DOWN
GLUT_KEY_HOME
GLUT_KEY_END
GLUT_KEY_INSERT
GLUT_KEY_DELETE

GLUT_KEY_ESCAPE
GLUT_KEY_ENTER
GLUT_KEY_TAB

GLUT_KEY_CAPS
GLUT_KEY_SHIFT
GLUT_KEY_CONTROL
GLUT_KEY_ALT

GLUT_KEY_MULTIPLY
GLUT_KEY_ADD
GLUT_KEY_SEPERATOR
GLUT_KEY_SUBTRACT
GLUT_KEY_DECIMAL
GLUT_KEY_DIVIDE
Messages postés
65
Date d'inscription
dimanche 27 juillet 2003
Statut
Membre
Dernière intervention
21 avril 2006

désolé pour le message du haut, je ne sais pas bien pourquoi tout c'est mis sur une ligne.
Messages postés
99
Date d'inscription
mercredi 12 mai 2004
Statut
Membre
Dernière intervention
29 mars 2006

Moi j'utilise actuellement
glutKeyboardFunc


Le pb de ta fonction c'est que si je suis en
majuscule je reçois 'A' pour la touche A '1' pour la touche 1 et que si
je suis en minuscule je reçois 'a' pour la touche A et '&' pour la
touche 1.

Moi je veu recuperer la même chose en majuscule ou pas. Genre VK_A en w32 mais en portable avec un fenetre glut.
Messages postés
65
Date d'inscription
dimanche 27 juillet 2003
Statut
Membre
Dernière intervention
21 avril 2006

ah d'accord, j'ai compris.
Je ne sais comment on peut faire ça avec glut.

Je crois que tu seras obliger de faire :

switch(key)
{
case 'A':
case 'a':

traitement;

break;

case '1':
case '&':
traitement;
break;
}

Je crois que tu n'as pas le choix, mais avec un peu de bonne volonté, ça va, ce n'est pas si long.
Bonne progr.
Messages postés
99
Date d'inscription
mercredi 12 mai 2004
Statut
Membre
Dernière intervention
29 mars 2006

Le problème c'est que le jour ou quelqu'un utilise mon prog avec un
clavier non francais c'est le bordel. En plus je ne peut pas distinguer
le pavé numérique de la ranger de chiffres au dessus du clavier.

Je crois que je vais être obliger d'utiliser des API non portables et de me le taper pour tous les OS.
Messages postés
65
Date d'inscription
dimanche 27 juillet 2003
Statut
Membre
Dernière intervention
21 avril 2006

Oui, je pense.
Regarde, même dans les jeux vidéo super célèbre, il y a ce problème de clavier américain/français.
Je cite ? Half life !!
Et pourtant Half life n'est pas multiplateforme !!

Donc, seul solution, bidouille pour que l'utilisateur puisse régler son clavier.

kortin