Come posso cambiare la posizione del cursore del mouse in OpenGL / Glut?
Domanda
Sto scrivendo un gioco semplice e ho intenzione di avere il mouse controllare la telecamera (utilizzando GlutPassiveMotionFunc).
ho intenzione di beccheggio e imbardata base al largo la differenza mouse tra le richiamate, ma penso che sarebbe una buona idea "forzare" il mouse di nuovo al centro dello schermo ogni volta che hanno cercato di spostarlo. In questo modo il loro cursore non sarà al bordo dello schermo e non può muoversi ulteriormente in questa direzione.
Quale comando Glut / OpenGL che posso usare per forzare la posizione del mouse per cambiare?
Soluzione
Usa glutWarpPointer(x, y)
, dove x
e y
(entrambe int
s) sono in pixel (relativa all'origine della finestra). Ad esempio:
glutWarpPointer(windowWidth / 2, windowHeight / 2);
Altri suggerimenti
Ci scusiamo per il ritardo di risposta. Quello che volevo dire è che dopo io uso la funzione glutWrapPointer, se mi stampare i valori x e y, non ho potuto prendere il cambiamento sul cursore e stampa sempre i valori all'interno della funzione glutWrapPointer che ho fornito. Quello che ho fatto per risolvere il problema è stato quello di spostare questa funzione all'interno della funzione Animate di OpenGL e ha funzionato bene.