fglBlendEquation(3G)

fglBlendEquation - set the blend equation

As shipped in IRIX 6.5.19. Added in IRIX 6.5.15.

NAME
     fglBlendEquation - set the blend equation


FORTRAN SPECIFICATION
     SUBROUTINE fglBlendEquation( INTEGER*4 mode )


PARAMETERS
     mode  specifies how source and destination colors are combined.  It must
           be GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, GL_MIN,
           GL_MAX, GL_ALPHA_MIN_SGIX, or GL_ALPHA_MAX_SGIX.


DESCRIPTION
     The blend equation determines how a new pixel (the ``source'' color) is
     combined with a pixel already in the framebuffer (the ``destination''
     color).

     GL_MIN
          sets the blend equation so that each component of the result color
          is the minimum of the corresponding components of the source and
          destination colors.

     GL_MAX
          sets the blend equation so that each component of the result color
          is the maximum of the corresponding components of the source and
          destination colors.

     GL_ALPHA_MIN_SGIX
          sets the blend equation so that the result color is either the
          source or destination color, according to whether the alpha
          component of the source color is less than, or greater than or equal
          to, the alpha component of the destination color, respectively.

     GL_ALPHA_MAX_SGIX
          sets the blend equation so that the result color is either the
          source or destination color, according to whether the alpha
          component of the source color is greater than, or less than or equal
          to, the alpha component of the destination color, respectively.

     The remaining blend equations use the source and destination blend
     factors specified by fglBlendFunc.  See fglBlendFunc for a description of
     the various blend factors.

     In the equations that follow, source and destination color components are
     referred to as (R  G  B  A ) and (R  G  B  A ), respectively.  The result
                      s, s, s, s        d, d, d, d
     color is referred to as (R  G  B  A ).  The source and destination blend
                               r, r, r, r
     factors are denoted (s  s  s  s ) and (d  d  d  d ), respectively.  For
                           R, G, B, A        R, G, B, A
     these equations all color components are understood to have values in the
     range [0, 1].
     GL_FUNC_ADD
          sets the blend equation so that the source and destination data are
          added.  Each component of the source color is multiplied by the
          corresponding source factor, then each component of the destination
          color is multiplied by the corresponding destination factor.  The
          result is the componentwise sum of the two products, clamped to the
          range [0, 1].

               Rr = min(1, R  s  + R  d )
                            s  R    d  R
               Gr = min(1, G  s  + G  d )
                            s  G    d  G
               Br = min(1, B  s  + B  d )
                            s  B    d  B
               Ar = min(1, A  s  + A  d )
                            s  A    d  A

     GL_FUNC_SUBTRACT
          Is like GL_FUNC_ADD except the product of the destination factor and
          the destination color is componentwise subtracted from the product
          of the source factor and the source color.  The result is clamped to
          the range [0, 1].

               Rr = max(0, R  s  - R  d )
                            s  R    d  R
               Gr = max(0, G  s  - G  d )
                            s  G    d  G
               Br = max(0, B  s  - B  d )
                            s  B    d  B
               Ar = max(0, A  s  - A  d )
                            s  A    d  A

     GL_FUNC_REVERSE_SUBTRACT
          Is like GL_FUNC_ADD except the product of the source factor and the
          source color is componentwise subtracted from the product of the
          destination factor and the destination color.  The result is clamped
          to the range [0, 1].

               Rr = max(0, R  d  - R  s )
                            d  R    s  R
               Gr = max(0, G  d  - G  s )
                            d  G    s  G
               Br = max(0, B  d  - B  s )
                            d  B    s  B
               Ar = max(0, A  d  - A  s )
                            d  A    s  A

     The GL_MIN and GL_MAX equations are useful for applications that analyze
     image data (image thresholding against a constant color, for example).
     The GL_FUNC_ADD equation is useful for antialiasing and transparency,
     among other things.

     Initially, the blend equation is set to GL_FUNC_ADD.

NOTES
     fglBlendEquation is part of the GL_ARB_imaging subset. fglBlendEquation
     is present only if GL_ARB_imaging is returned when fglGetString is called
     with GL_EXTENSIONS as its argument.

     The GL_MIN, GL_MAX, GL_ALPHA_MIN_SGIX and GL_ALPHA_MAX_SGIX equations do
     not use the source or destination factors, only the source and
     destination colors.

ERRORS
     GL_INVALID_ENUM is generated if mode is not one of GL_FUNC_ADD,
     GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, GL_MAX, or GL_MIN.

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

ASSOCIATED GETS
     fglGet with an argument of GL_BLEND_EQUATION


MACHINE DEPENDENCIES
     The SGIX_blend_alpha_minmax extension is supported only on Octane2 VPro
     systems.


SEE ALSO
     fglGetString, fglBlendColor, fglBlendFunc