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

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

2 ответа

Решение

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

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

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

GL_MODELVIEW_MATRIX

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

Используйте 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);
Другие вопросы по тегам