fglAlphaFunc(3G)

fglAlphaFunc - specify the alpha test function

Showing IRIX 6.5.30 (default release). Last changed in IRIX 6.5.15.

NAME
     fglAlphaFunc - specify the alpha test function


FORTRAN SPECIFICATION
     SUBROUTINE fglAlphaFunc( INTEGER*4 func,
                              REAL*4 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 initial value is
           GL_ALWAYS.

     ref   Specifies the reference value that incoming alpha values are
           compared to.  This value is clamped to the range [0, 1], where 0
           represents the lowest possible alpha value and 1 the highest
           possible value.  The initial reference value is 0.

DESCRIPTION
     The alpha test discards fragments depending on the outcome of a
     comparison between an incoming fragment's alpha value and a constant
     reference value.  fglAlphaFunc specifies the reference value and the
     comparison function.  The comparison is performed only if alpha testing
     is enabled. By default, it is not enabled. (See fglEnable and fglDisable
     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 value passes the comparison, the incoming fragment is drawn
     if it also passes subsequent stencil and depth buffer tests. If the value
     fails the comparison, 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 (initial value).

     fglAlphaFunc operates on all pixel write operations, including those
     resulting from the scan conversion of points, lines, polygons, and
     bitmaps, and from pixel draw and copy operations.  fglAlphaFunc does not
     affect screen clear operations.

NOTES
     Alpha testing is performed only in RGBA mode.

ERRORS
     GL_INVALID_ENUM is generated if func is not an accepted value.

     GL_INVALID_OPERATION is generated if fglAlphaFunc is executed between the
     execution of fglBegin and the corresponding execution of fglEnd.

ASSOCIATED GETS
     fglGet with argument GL_ALPHA_TEST_FUNC
     fglGet with argument GL_ALPHA_TEST_REF
     fglIsEnabled with argument GL_ALPHA_TEST


SEE ALSO
     fglBlendFunc, fglClear, fglDepthFunc, fglEnable, fglStencilFunc