glGetMaterial(3G) OpenGL Reference glGetMaterial(3G)
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. GLFRONT
or GLBACK are accepted, representing the front and back
materials, respectively.
pname Specifies the material parameter to return. GLAMBIENT,
GLDIFFUSE, GLSPECULAR, GLEMISSION, GLSHININESS, and
GLCOLORINDEXES 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:
GLAMBIENT 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. The initial value is (0.2, 0.2, 0.2,
1.0)
GLDIFFUSE 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. The initial value is (0.8, 0.8, 0.8,
1.0).
Page 1
glGetMaterial(3G) OpenGL Reference glGetMaterial(3G)
GLSPECULAR 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. The initial value is (0, 0, 0, 1).
GLEMISSION 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.0], the corresponding integer return value is
undefined. The initial value is (0, 0, 0, 1).
GLSHININESS 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. The initial value is 0.
GLCOLORINDEXES 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. (All the
other parameters are 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
GLINVALIDENUM is generated if face or pname is not an accepted value.
GLINVALIDOPERATION is generated if glGetMaterial is executed between
the execution of glBegin and the corresponding execution of glEnd.
SEE ALSO
glMaterial
Page 2