GLCOLORMATERIAL
Section: Misc. Reference Manual Pages (3G)
Page Index
NAME
glColorMaterial
- cause a material color to track the current 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 subset of parameters is to be specified for each
vertex, calling
glColorMaterial is preferable to calling
glMaterial.
Call glColorMaterial before enabling GL_COLOR_MATERIAL.
Calling glDrawElements, glDrawArrays, or glDrawRangeElements
may leave the current color indeterminate, if the color array is enabled.
If
glColorMaterial is enabled while the current 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 corresponding 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(3G),
glColorPointer(3G),
glDrawArrays(3G),
glDrawElements(3G),
glDrawRangeElements(3G),
glEnable(3G),
glLight(3G),
glLightModel(3G),
glMaterial(3G)