glLoadMatrix — replace the current matrix with the specified matrix

C Specification

void glLoadMatrixf(const GLfloat * m);
void glLoadMatrixx(const GLfixed * m);



Specifies a pointer to 16 consecutive values, which are used as the elements of a 4x4 column-major matrix.


glLoadMatrix replaces the current matrix with the one whose elements are specified by m. The current matrix is the projection matrix, modelview matrix, or texture matrix, depending on the current matrix mode (see glMatrixMode).

The current matrix, M, defines a transformation of coordinates. For instance, assume M refers to the modelview matrix. If v= v[0] v[1] v[2] v[3] is the set of object coordinates of a vertex, and m points to an array of 16 fixed-point or single-precision floating-point values m[0], m[1], ... m[15] , then the modelview transformation Mv does the following:

Mv= ( m[0] m[4] m[8] m[12] m[1] m[5] m[9] m[13] m[2] m[6] m[10] m[14] m[3] m[7] m[11] m[15] ) x ( v[0] v[1] v[2] v[3] )

Where ``x'' denotes matrix multiplication.

Projection and texture transformations are similarly defined.


While the elements of the matrix may be specified with fixed point or single precision, the GL implementation may store or operate on these values in less than single precision.

Associated Gets

glGet with argument GL_MATRIX_MODE

glGet with argument GL_MODELVIEW_MATRIX

glGet with argument GL_PROJECTION_MATRIX

glGet with argument GL_TEXTURE_MATRIX

See Also

glLoadIdentity, glMatrixMode, glMultMatrix, glPushMatrix


Copyright © 2003-2004 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see