bonjour, pour le plaisir d'apprendre je fait un petit pong en C avec opengl et utilise glfw pour la geston des fenetres et le input clavier.
mon probleme est que quand j'appuis sur la touche 'a' pour deplacer la raquette vers la gauche raqH, elle va completement a gauche aulieu de bouger d'un cran.



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 glClear(GL_COLOR_BUFFER_BIT);
while(running==GL_TRUE)
{
        running = !glfwGetKey(GLFW_KEY_ESC)&& glfwGetWindowParam(GLFW_OPENED);
 
        if( glfwGetKey('A'))
        {
            raqH->x -=.01;   //deplace le x de la raquette du joueur vers la gauche
        }
        if( glfwGetKey('D'))
            raqH->x +=.01; //deplace le x vers la droite 
 
        now = glfwGetTime();  //gere le temps pour deplacer la ball
        if(now-oldtime>=.025)
        {
            oldtime=now;
            res = moveball();  // renvois autre chose que 0 si la balle sort des limites
        }
 
        if(res!=0)
            break;
 
        checkRaq(); // verifie que la raquette est dans les limites sinon la place a la limite la plus proche
        drawMachine(); //dessine tout les objets de la scenes actuellement balle decore et raquette
        glfwSwapBuffers();
}
en faite je comprend le probleme mais je sais pas comment le regler avec glfw.
autre fois on faisait:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
if(keypressed()) //conio kbhit() 
//linux j'utilisais un bout de code vu dans beginning linux programming pour les
//fonction kbhit() et getch() 
   key = getkey(); //sous dos avec conio c'etait getch() 
if(key=='a')
{
   key = 0; //empeche de revenir ici saus si la touche 'a' a ete presse de nouveau
   raqH->x-=.01;
}
mais la je vois pas comment implementer ca.
merci de votre patience