GLCOLORMATERIAL() MachTen Programmer’s Manual GLCOLORMATERIAL()

NAME
glColorMaterial - cause a material color to track the cur-
rent color

C SPECIFICATION
void glColorMaterial( GLenum face,
GLenum mode )

PARAMETERS
face Specifies whether front, back, or both front and
back material parameters should track the current
color. Accepted values are GL_FRONT, GL_BACK, and
GL_FRONT_AND_BACK. The initial value is
GL_FRONT_AND_BACK.

mode Specifies which of several material parameters track
the current color. Accepted values are GL_EMISSION,
GL_AMBIENT, GL_DIFFUSE, GL_SPECULAR, and
GL_AMBIENT_AND_DIFFUSE. The initial value is
GL_AMBIENT_AND_DIFFUSE.

DESCRIPTION
glColorMaterial specifies which material parameters track
the current color. When GL_COLOR_MATERIAL is enabled, the
material parameter or parameters specified by mode, of the
material or materials specified by face, track the current
color at all times.

To enable and disable GL_COLOR_MATERIAL, call glEnable and
glDisable with argument GL_COLOR_MATERIAL.
GL_COLOR_MATERIAL is initially disabled.

NOTES
glColorMaterial makes it possible to change a subset of
material parameters for each vertex using only the glColor
command, without calling glMaterial. If only such a sub-
set of parameters is to be specified for each vertex,
calling glColorMaterial is preferable to calling glMate-
rial.

Call glColorMaterial before enabling GL_COLOR_MATERIAL.

Calling glDrawElements may leave the current color inde-
terminate. If glColorMaterial is enabled while the cur-
rent color is indeterminate, the lighting material state
specified by face and mode is also indeterminate.

If the GL version is 1.1 or greater, and GL_COLOR_MATERIAL
is enabled, evaluated color values affect the results of
the lighting equation as if the current color were being
modified, but no change is made to the tracking lighting
parameter of the current color.

ERRORS
GL_INVALID_ENUM is generated if face or mode is not an
accepted value.

GL_INVALID_OPERATION is generated if glColorMaterial is
executed between the execution of glBegin and the corre-
sponding execution of glEnd.

ASSOCIATED GETS
glIsEnabled with argument GL_COLOR_MATERIAL
glGet with argument GL_COLOR_MATERIAL_PARAMETER
glGet with argument GL_COLOR_MATERIAL_FACE

SEE ALSO
glColor, glColorPointer, glDrawElements, glEnable,
glLight, glLightModel, glMaterial

MachTen 2