NAME
	  fglMaterialf,	fglMateriali, fglMaterialfv, fglMaterialiv -
	  specify material parameters for the lighting model


     FORTRAN SPECIFICATION
	  SUBROUTINE fglMaterialf( INTEGER*4 face,
				   INTEGER*4 pname,
				   REAL*4 param	)
	  SUBROUTINE fglMateriali( INTEGER*4 face,
				   INTEGER*4 pname,
				   INTEGER*4 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.

     FORTRAN SPECIFICATION
	  SUBROUTINE fglMaterialfv( INTEGER*4 face,
				    INTEGER*4 pname,
				    CHARACTER*8	params )
	  SUBROUTINE fglMaterialiv( INTEGER*4 face,
				    INTEGER*4 pname,
				    CHARACTER*8	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 being 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
	  fglMaterial 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 fglLightModel reference page for
	  details concerning one- and two-sided	lighting calculations.

	  fglMaterial 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 several
	  parameters in	one or both sets will be modified.  The	third,
	  params, specifies what value or values will be assigned to
	  the specified	parameter.

	  Material parameters are used in the lighting equation	that
	  is optionally	applied	to each	vertex.	 The equation is
	  discussed in the fglLightModel reference page.  The
	  parameters that can be specified using fglMaterial, and
	  their	interpretations	by the lighting	equation, are as
	  follows:

	  GL_AMBIENT	      params contains four integer or
			      floating-point values that specify the
			      ambient 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 ambient reflectance for both
			      front- and back-facing materials is
			      (0.2, 0.2, 0.2, 1.0).

	  GL_DIFFUSE	      params contains four integer or
			      floating-point values 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 values 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 directly.	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 values 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 directly.	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 material.
			      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 fglMaterial	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 values specifying the
			      color indices for	ambient, diffuse, and
			      specular lighting.  These	three values,
			      and GL_SHININESS,	are the	only material
			      values used by the color index mode
			      lighting equation.  Refer	to the
			      fglLightModel reference page for a
			      discussion of color index	lighting.

     NOTES
	  The material parameters can be updated at any	time.  In
	  particular, fglMaterial can be called	between	a call to
	  fglBegin and the corresponding call to fglEnd.  If only a
	  single material parameter is to be changed per vertex,
	  however, fglColorMaterial is preferred over fglMaterial (see
	  fglColorMaterial).

     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
	  fglGetMaterial

     SEE ALSO
	  fglColorMaterial, fglLight, fglLightModel