void GLAPIENTRY glMaterialf( GLenum face,
                                    GLenum pname,
                                    GLfloat param )
       void GLAPIENTRY glMateriali( GLenum face,
                                    GLenum pname,
                                    GLint param )

PARAMETERS
       face    Specifies which face or faces are being updated.  Must be one of
               GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK.

       pname   Specifies  the  single-valued  material parameter of the face or
               faces that is being updated.  Must be GL_SHININESS.

       param   Specifies the value that parameter GL_SHININESS will be set to.

C SPECIFICATION
       void GLAPIENTRY glMaterialfv( GLenum face,
                                     GLenum pname,
                                     const GLfloat *params )
       void GLAPIENTRY glMaterialiv( GLenum face,
                                     GLenum pname,
                                     const GLint *params )

PARAMETERS
       face   Specifies which face or faces are being updated.  Must be one  of
              GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK.

       pname  Specifies the material parameter of the face or faces that is be‐
              ing updated.  Must be one of GL_AMBIENT, GL_DIFFUSE, GL_SPECULAR,
              GL_EMISSION,     GL_SHININESS,     GL_AMBIENT_AND_DIFFUSE,     or
              GL_COLOR_INDEXES.

       params Specifies a pointer to the value or values that pname will be set
              to.

DESCRIPTION
       glMaterial assigns values to material parameters.  There are two matched
       sets of material parameters.  One, the  front-facing  set,  is  used  to
       shade  points, lines, bitmaps, and all polygons (when two-sided lighting
       is disabled), or just front-facing polygons (when two-sided lighting  is
       enabled).   The  other  set,  back-facing,  is used to shade back-facing
       polygons  only  when  two-sided  lighting  is  enabled.   Refer  to  the
       glLightModel  reference  page  for details concerning one- and two-sided
       lighting calculations.

       glMaterial takes three arguments.  The first,  face,  specifies  whether
       the GL_FRONT materials, the GL_BACK materials, or both GL_FRONT_AND_BACK
       materials will be modified.  The second, pname, specifies which of  sev‐
       eral  parameters  in  one  or  both  sets  will be modified.  The third,
       params, specifies what value or values will be assigned to the specified
       parameter.
                           front- and back-facing materials is (0.2, 0.2,  0.2,
                           1.0).

       GL_DIFFUSE          params  contains four integer or floating-point val‐
                           ues that specify the diffuse RGBA reflectance of the
                           material.   Integer  values are mapped linearly such
                           that the most positive representable value  maps  to
                           1.0,  and the most negative representable value maps
                           to -1.0.  Floating-point values are mapped directly.
                           Neither   integer   nor  floating-point  values  are
                           clamped.  The initial diffuse reflectance  for  both
                           front-  and back-facing materials is (0.8, 0.8, 0.8,
                           1.0).

       GL_SPECULAR         params contains four integer or floating-point  val‐
                           ues  that  specify  the specular RGBA reflectance of
                           the material.  Integer values  are  mapped  linearly
                           such that the most positive representable value maps
                           to 1.0, and the most  negative  representable  value
                           maps  to -1.0.  Floating-point values are mapped di‐
                           rectly.  Neither integer nor  floating-point  values
                           are  clamped.   The initial specular reflectance for
                           both front- and back-facing materials is (0,  0,  0,
                           1).

       GL_EMISSION         params  contains four integer or floating-point val‐
                           ues that specify the RGBA emitted light intensity of
                           the  material.   Integer  values are mapped linearly
                           such that the most positive representable value maps
                           to  1.0,  and  the most negative representable value
                           maps to -1.0.  Floating-point values are mapped  di‐
                           rectly.   Neither  integer nor floating-point values
                           are clamped.  The  initial  emission  intensity  for
                           both  front-  and back-facing materials is (0, 0, 0,
                           1).

       GL_SHININESS        params is a single integer or  floating-point  value
                           that specifies the RGBA specular exponent of the ma‐
                           terial.   Integer  and  floating-point  values   are
                           mapped  directly.   Only values in the range [0,128]
                           are accepted.  The  initial  specular  exponent  for
                           both front- and back-facing materials is 0.

       GL_AMBIENT_AND_DIFFUSE
                           Equivalent to calling glMaterial twice with the same
                           parameter values, once with GL_AMBIENT and once with
                           GL_DIFFUSE.

       GL_COLOR_INDEXES    params contains three integer or floating-point val‐
                           ues specifying the color indices for  ambient,  dif‐
                           fuse,  and  specular  lighting.  These three values,
                           and GL_SHININESS, are the only material values  used

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

       GL_INVALID_VALUE is generated if a specular exponent outside  the  range
       [0,128] is specified.

ASSOCIATED GETS
       glGetMaterial

SEE ALSO
       glColorMaterial, glLight, glLightModel

                                                                 GLMATERIAL(3G)

Man(1) output converted with man2html