| Name |
| |
| EXT_blend_subtract |
| |
| Name Strings |
| |
| GL_EXT_blend_subtract |
| |
| Version |
| |
| $Date: 1995/03/31 04:40:39 $ $Revision: 1.4 $ |
| |
| Number |
| |
| 38 |
| |
| Dependencies |
| |
| EXT_blend_minmax affects the definition of this extension |
| |
| Overview |
| |
| Two additional blending equations are specified using the interface |
| defined by EXT_blend_minmax. These equations are similar to the |
| default blending equation, but produce the difference of its left |
| and right hand sides, rather than the sum. Image differences are |
| useful in many image processing applications. |
| |
| New Procedures and Functions |
| |
| None |
| |
| New Tokens |
| |
| Accepted by the <mode> parameter of BlendEquationEXT: |
| |
| FUNC_SUBTRACT_EXT 0x800A |
| FUNC_REVERSE_SUBTRACT_EXT 0x800B |
| |
| Additions to Chapter 2 of the GL Specification (OpenGL Operation) |
| |
| None |
| |
| Additions to Chapter 3 of the GL Specification (Rasterization) |
| |
| None |
| |
| Additions to Chapter 4 of the GL Specification (Per-Fragment Operations |
| and the Framebuffer) |
| |
| Two additional blending equations are defined. If BlendEquationEXT is |
| called with <mode> set to FUNC_SUBTRACT_EXT, the blending equation |
| becomes |
| |
| C' = (Cs * S) - (Cd * D) |
| |
| / 0.0 C' < 0.0 |
| C = ( |
| \ C' C' >= 0.0 |
| |
| where Cs and Cd are the source and destination colors, and S and D are |
| as specified by BlendFunc. |
| |
| If BlendEquationEXT is called with <mode> set to |
| FUNC_REVERSE_SUBTRACT_EXT, the blending equation becomes |
| |
| C' = (Cd * D) - (Cs * S) |
| |
| / 0.0 C' < 0.0 |
| C = ( |
| \ C' C' >= 0.0 |
| |
| In all cases the blending equation is evaluated separately for each |
| color component. |
| |
| Additions to Chapter 5 of the GL Specification (Special Functions) |
| |
| None |
| |
| Additions to Chapter 6 of the GL Specification (State and State Requests) |
| |
| None |
| |
| Additions to the GLX Specification |
| |
| None |
| |
| GLX Protocol |
| |
| None |
| |
| Dependencies on EXT_blend_minmax |
| |
| If this extension is supported, but EXT_blend_minmax is not, then |
| this extension effectively defines the procedure BlendEquationEXT, its |
| parameter FUNC_ADD_EXT, and the query target BLEND_EQUATION_EXT, as |
| described in EXT_blend_minmax. It is therefore as though |
| EXT_blend_minmax were also supported, except that equations MIN_EXT |
| and MAX_EXT are not supported. |
| |
| Errors |
| |
| INVALID_ENUM is generated by BlendEquationEXT if its single parameter |
| is not FUNC_ADD_EXT, MIN_EXT, MAX_EXT, FUNC_SUBTRACT_EXT, or |
| FUNC_REVERSE_SUBTRACT_EXT. |
| |
| INVALID_OPERATION is generated if BlendEquationEXT is executed between |
| the execution of Begin and the corresponding execution to End. |
| |
| New State |
| |
| Get Value Get Command Type Initial Value Attribute |
| --------- ----------- ---- ------------- --------- |
| BLEND_EQUATION_EXT GetIntegerv Z5 FUNC_ADD_EXT color-buffer |
| |
| New Implementation Dependent State |
| |
| None |