在OpenGL中,如何读取模型视图矩阵中的当前x / y转换?我知道你必须将当前矩阵加载到一个数组中并从那里读取浮点数,但我不知道该怎么做。
答案 0 :(得分:21)
要检索当前的模型视图矩阵,您必须使用GL_MODELVIEW_MATRIX
参数调用glGetFloatv函数。
GLfloat matrix[16];
glGetFloatv (GL_MODELVIEW_MATRIX, matrix);
来自文档:
GL_MODELVIEW_MATRIX
params返回十六个值: 模型视图矩阵在顶部 modelview矩阵堆栈。最初这个 矩阵是单位矩阵。
答案 1 :(得分:5)
使用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);