glGetMaterial.3gl








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








Introduction | Alphabetic | Specification

Last Edited: Mon, May 22, 1995

AFV