void glMultMatrixd(const GLdouble *m) void glMultMatrixf(const GLfloat *m)
m | Points to 16 consecutive values that are used as the elements of a 4x4 column-major matrix. |
The current matrix is determined by the current matrix mode (see glMatrixMode). It is either the projection matrix, modelview matrix, or the texture matrix.
m points to a 4x4 matrix of single- or double-precision floating-point values stored in column-major order. That is, the matrix is stored as follows:
| | m0 | m4 | m8 | m12 | | |
| | m1 | m5 | m9 | m13 | | |
| | m2 | m6 | m10 | m14 | | |
| | m3 | m7 | m11 | m15 | | |
In many computer languages 4x4 arrays are represented in row-major order. The transformations just described represent these matrices in column-major order. The order of the multiplication is important. For example, if the current transformation is a rotation, and glMultMatrix is called with a translation matrix, the translation is done directly on the coordinates to be transformed, while the rotation is done on the results of that translation.