- return material parameters



C SPECIFICATION


PARAMETERS

       _param1  Specifies  which  of  the  two materials is being
                queried.  GL_FRONT or GL_BACK are accepted,  rep-
                resenting  the  front and back materials, respec-
                tively.

       _param2  Specifies  the  material  parameter  to   return.
                GL_AMBIENT, GL_DIFFUSE, GL_SPECULAR, GL_EMISSION,
                GL_SHININESS, and GL_COLOR_INDEXES are  accepted.

       _param3  Returns the requested data.


DESCRIPTION

       glGetMaterial  returns  in  _param3 the value or values of
       parameter _param2 of material _param1. Six parameters  are
       defined:

       GL_AMBIENT            _param3   returns  four  integer  or
                             floating-point  values  representing
                             the ambient reflectance of the mate-
                             rial.     Integer    values,    when
                             requested,  are linearly mapped from
                             the internal  floating-point  repre-
                             sentation  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  cor-
                             responding  integer  return value is
                             undefined.  The  initial  value   is
                             (0.2, 0.2, 0.2, 1.0)

       GL_DIFFUSE            _param3   returns  four  integer  or
                             floating-point  values  representing
                             the diffuse reflectance of the mate-
                             rial.     Integer    values,    when
                             requested,  are linearly mapped from
                             the internal  floating-point  repre-
                             sentation  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  cor-
                             responding  integer  return value is
                             undefined.  The  initial  value   is
                             (0.8, 0.8, 0.8, 1.0).
                             undefined. The initial value is  (0,
                             0, 0, 1).

       GL_EMISSION           _param3   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  repre-
                             sentation  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).

       GL_SHININESS          _param3   returns   one  integer  or
                             floating-point  value   representing
                             the  specular  exponent of the mate-
                             rial.     Integer    values,    when
                             requested,  are computed by rounding
                             the internal floating-point value to
                             the  nearest integer value. The ini-
                             tial value is 0.

       GL_COLOR_INDEXES      _param3  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  con-
       tents of _param3.


ERRORS

       GL_INVALID_ENUM  is generated if _param1 or _param2 is not
       an accepted value.

       GL_INVALID_OPERATION is generated if glGetMaterial is exe-
       cuted between the execution of glBegin and the correspond-
       ing execution of glEnd.