In OpenGL, come si legge la traduzione x/y corrente nella matrice modelview? So che devi caricare la matrice corrente in un array e leggere i float da lì, ma non so esattamente come farlo.Recupero della matrice ModelView attuale
10
A
risposta
21
Per recuperare l'attuale matrice modelview è necessario chiamare la funzione glGetFloatv con il parametro GL_MODELVIEW_MATRIX
.
GLfloat matrix[16];
glGetFloatv (GL_MODELVIEW_MATRIX, matrix);
Dalla documentazione:
GL_MODELVIEW_MATRIX
params restituisce valori sedici: la matrice modelview in cima alla pila di matrice modelview. Inizialmente questa matrice è la matrice identità.
5
Usa glGlet
GLfloat matrixf[16];
glGetFloatv(GL_MODELVIEW_MATRIX, matrixf);
GLdouble matrixd[16];
glGetDoublev(GL_MODELVIEW_MATRIX, matrixd);
GLint matrixi[16];
glGetIntegerv(GL_MODELVIEW_MATRIX, matrixi);
+0
'Glet'? o "prendi"? – zhangxaochen
mi ha battuto ad esso :) –