Comment puis-je changer la position du curseur de la souris dans OpenGL / Glut?
Question
J'écris un jeu simple et je vais avoir la souris de contrôle de l'appareil photo (à l'aide GlutPassiveMotionFunc).
Je vais planter et cependant je pense que lacet à base de la différence de la souris entre les callbacks, ce serait une bonne idée de « forcer » la souris de nouveau au centre de l'écran chaque fois qu'ils ont essayé de le déplacer. De cette façon, leur curseur ne sera pas au bord de l'écran et ils ne peuvent se déplacer plus loin dans cette direction.
Quelle commande Glut / OpenGL puis-je utiliser pour forcer la position de la souris pour changer?
La solution
Utilisation glutWarpPointer(x, y)
, où x
et y
(les deux int
s) sont en pixels (par rapport à l'origine de la fenêtre). Par exemple:
glutWarpPointer(windowWidth / 2, windowHeight / 2);
Autres conseils
Désolé pour la réponse tardive. Ce que je voulais dire que, après j'utiliser la fonction glutWrapPointer, si j'imprimer les valeurs x et y, je ne pouvais pas prendre le changement sur le curseur et il imprime toujours les valeurs à l'intérieur de la fonction glutWrapPointer que je fournis. Qu'est-ce que je l'ai fait pour y remédier était de déplacer cette fonction dans la fonction Animer de openGl et il a bien fonctionné.