Получение текущей матрицы ModelView

В OpenGL, как мне прочитать текущий перевод x/y в матрице представления модели? Я знаю, что вам нужно загрузить текущую матрицу в массив и прочитать оттуда числа с плавающей запятой, но я не знаю, как именно это сделать.


person Community    schedule 19.04.2009    source источник


Ответы (2)


Чтобы получить текущую матрицу просмотра модели, вы должны вызвать функцию glGetFloatv с параметром GL_MODELVIEW_MATRIX.

GLfloat matrix[16]; 
glGetFloatv (GL_MODELVIEW_MATRIX, matrix); 

Из документации:

GL_MODELVIEW_MATRIX

params возвращает шестнадцать значений: матрица представления модели в верхней части стека матриц представления модели. Первоначально эта матрица является единичной матрицей.

person arul    schedule 19.04.2009

Используйте 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);
person Brian Gianforcaro    schedule 19.04.2009
comment
'глет'? или "получить"? - person zhangxaochen; 19.10.2016