In OpenGL, how do I read the current x/y translation in the modelview matrix? I know that you have to load the current matrix into an array and read the floats from there, but I don't know precisely how to do it.
Asked
Active
Viewed 2.4k times
2 Answers
26
In order to retrieve the current modelview matrix you have to call the glGetFloatv function with GL_MODELVIEW_MATRIX
parameter.
GLfloat matrix[16];
glGetFloatv (GL_MODELVIEW_MATRIX, matrix);
From the documentation:
GL_MODELVIEW_MATRIX
params returns sixteen values: the modelview matrix on the top of the modelview matrix stack. Initially this matrix is the identity matrix.

arul
- 13,998
- 1
- 57
- 77
5
Use 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);

Brian Gianforcaro
- 26,564
- 11
- 58
- 77
-
1'glet'? or 'get'? – zhangxaochen Oct 19 '16 at 01:53