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