获取当前 ModelView 矩阵
Posted
技术标签:
【中文标题】获取当前 ModelView 矩阵【英文标题】:Obtaining current ModelView matrix 【发布时间】:2009-04-19 21:27:28 【问题描述】:在 OpenGL 中,如何读取模型视图矩阵中的当前 x/y 转换?我知道您必须将当前矩阵加载到数组中并从那里读取浮点数,但我不知道该怎么做。
【问题讨论】:
【参考方案1】:为了检索当前模型视图矩阵,您必须使用 GL_MODELVIEW_MATRIX
参数调用 glGetFloatv 函数。
GLfloat matrix[16];
glGetFloatv (GL_MODELVIEW_MATRIX, matrix);
来自文档:
GL_MODELVIEW_MATRIX
params 返回十六个值: 顶部的模型视图矩阵 模型视图矩阵堆栈。最初这个 matrix 是单位矩阵。
【讨论】:
【参考方案2】:使用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);
【讨论】:
'glet'?还是“得到”?以上是关于获取当前 ModelView 矩阵的主要内容,如果未能解决你的问题,请参考以下文章
求教关于opengl函数glGetFloatv(GL_MODELVIEW_MATRIX, m)效率问题