glAlphaFunc.3gl








Name


  glAlphaFunc -	specify	the alpha test function





C Specification


  void glAlphaFunc( GLenum func,

		    GLclampf ref )





Parameters




  func	Specifies the alpha comparison function.  Symbolic constants

	GL_NEVER, GL_LESS, GL_EQUAL, GL_LEQUAL,	GL_GREATER, GL_NOTEQUAL,

	GL_GEQUAL, and GL_ALWAYS are accepted.	The default function is

	GL_ALWAYS.





  ref	Specifies the reference	value that incoming alpha values are compared

	to.  This value	is clamped to the range	0 through 1, where 0

	represents the lowest possible alpha value and 1 the highest possible

	value.	The default reference is 0.





Description


  The alpha test discards fragments depending on the outcome of	a comparison

  between the incoming fragment's alpha	value and a constant reference value.

   glAlphaFunc specifies the reference and comparison function.	 The

  comparison is	performed only if alpha	testing	is enabled.  (See glEnable

  and glDisable	of GL_ALPHA_TEST.)



  func and ref specify the conditions under which the pixel is drawn.  The

  incoming alpha value is compared to ref using	the function specified by

  func.	 If the	comparison passes, the incoming	fragment is drawn,

  conditional on subsequent stencil and	depth buffer tests. If the comparison

  fails, no change is made to the frame	buffer at that pixel location.



  The comparison functions are as follows:



  GL_NEVER	    Never passes.



  GL_LESS	    Passes if the incoming alpha value is less than the

		    reference value.



  GL_EQUAL	    Passes if the incoming alpha value is equal	to the

		    reference value.



  GL_LEQUAL	    Passes if the incoming alpha value is less than or equal

		    to the reference value.



  GL_GREATER	    Passes if the incoming alpha value is greater than the

		    reference value.



  GL_NOTEQUAL	    Passes if the incoming alpha value is not equal to the

		    reference value.



  GL_GEQUAL	    Passes if the incoming alpha value is greater than or

		    equal to the reference value.



  GL_ALWAYS	    Always passes.



  glAlphaFunc operates on all pixel writes, including those resulting from

  the scan conversion of points, lines,	polygons, and bitmaps, and from	pixel

  draw and copy	operations.  glAlphaFunc does not affect screen	clear

  operations.



Notes


  Alpha	testing	is done	only in	RGBA mode.



Errors


  GL_INVALID_ENUM is generated if func is not an accepted value.



  GL_INVALID_OPERATION is generated if glAlphaFunc is executed between the

  execution of glBegin and the corresponding execution of glEnd.



Associated Gets


  glGet	with argument GL_ALPHA_TEST_FUNC

  glGet	with argument GL_ALPHA_TEST_REF

  glIsEnabled with argument GL_ALPHA_TEST



See Also


  glBlendFunc, glClear,	glDepthFunc, glEnable, glStencilFunc








Introduction | Alphabetic | Specification

Last Edited: Mon, May 22, 1995

AFV