glGetMaterial
NAME
glGetMaterialfv, glGetMaterialiv -- return material parameters
C SPECIFICATION
void glGetMaterialfv(GLenum face,
GLenum pname,
GLfloat *params)
void glGetMaterialiv(GLenum face,
GLenum pname,
GLint *params)
PARAMETERS
- face
-
Specifies which of the two materials is being queried. GL_FRONT
or GL_BACK are accepted, representing the front and back
materials, respectively.
- pname
-
Specifies the material parameter to return. GL_AMBIENT,
GL_DIFFUSE, GL_SPECULAR, GL_EMISSION,
GL_SHININESS, and GL_COLOR_INDEXES are accepted.
- params
-
Returns the requested data.
DESCRIPTION
glGetMaterial returns in params the value or values of parameter
pname of material face. Six parameters are defined:
- GL_AMBIENT
-
params returns four integer or floating-point values
representing the ambient reflectance of the material.
Integer values, when requested, are linearly mapped
from the internal floating-point representation such
that 1.0 maps to the most positive representable
integer value, and -1.0 maps to the most negative
representable integer value. If the internal value
is outside the range [-1, 1], the corresponding
integer return value is undefined.
- GL_DIFFUSE
-
params returns four integer or floating-point values
representing the diffuse reflectance of the material.
Integer values, when requested, are linearly mapped
from the internal floating-point representation such
that 1.0 maps to the most positive representable
integer value, and -1.0 maps to the most negative
representable integer value. If the internal value
is outside the range [-1, 1], the corresponding
integer return value is undefined.
- GL_SPECULAR
-
params returns four integer or floating-point values
representing the specular reflectance of the
material. Integer values, when requested, are
linearly mapped from the internal floating-point
representation such that 1.0 maps to the most
positive representable integer value, and -1.0 maps
to the most negative representable integer value. If
the internal value is outside the range [-1, 1], the
corresponding integer return value is undefined.
- GL_EMISSION
-
params returns four integer or floating-point values
representing the emitted light intensity of the
material. Integer values, when requested, are
linearly mapped from the internal floating-point
representation such that 1.0 maps to the most
positive representable integer value, and -1.0 maps
to the most negative representable integer value. If
the internal value is outside the range [-1, 1], the
corresponding integer return value is undefined.
- GL_SHININESS
-
params returns one integer or floating-point value
representing the specular exponent of the material.
Integer values, when requested, are computed by
rounding the internal floating-point value to the
nearest integer value.
- GL_COLOR_INDEXES
-
params returns three integer or floating-point values
representing the ambient, diffuse, and specular
indices of the material. These indices are used only
for color index lighting. (The other parameters are
all used only for RGBA lighting.) Integer values,
when requested, are computed by rounding the internal
floating-point values to the nearest integer values.
NOTES
If an error is generated, no change is made to the contents of params.
ERRORS
GL_INVALID_ENUM is generated if face or pname is not
an accepted value.
GL_INVALID_OPERATION is generated if glGetMaterial is called
between a call to glBegin and the
corresponding call to glEnd.
SEE ALSO
glMaterial
back to the OpenGL index page
© 1995 Uwe Behrens. All rights reserved.