1Name 2 3 AMD_blend_minmax_factor 4 5 6Name Strings 7 8 GL_AMD_blend_minmax_factor 9 10 11Contributors 12 13 Graham Sellers 14 Pierre Boudier 15 16Contact 17 18 Graham Sellers, AMD (graham.sellers 'at' amd.com) 19 20 21Status 22 23 Shipping. 24 25 26Version 27 28 Last Modified Date: April 8, 2011 29 Author Revision: 3 30 31 32Number 33 34 404 35 36Dependencies 37 38 The extension is written against the OpenGL 4.1 (Core) Specification. 39 40 OpenGL 1.0 is required. 41 42Overview 43 44 The EXT_blend_minmax extension extended the GL's blending functionality 45 to allow the blending equation to be specified by the application. That 46 extension introduced the MIN_EXT and MAX_EXT blend equations, which caused the 47 result of the blend equation to become the minimum or maximum of the source 48 color and destination color, respectively. 49 50 The MIN_EXT and MAX_EXT blend equations, however, do not include the source 51 or destination blend factors in the arguments to the min and max functions. 52 This extension provides two new blend equations that produce the minimum 53 or maximum of the products of the source color and source factor, and the 54 destination color and destination factor. 55 56New Procedures and Functions 57 58 None. 59 60New Tokens 61 62 Accepted by the <mode> parameter of BlendEquation and BlendEquationi, and by 63 the <modeRGB> and <modeAlpha> parameters of BlendEquationSeparate and 64 BlendEquationSeparatei: 65 66 FACTOR_MIN_AMD 0x901C 67 FACTOR_MAX_AMD 0x901D 68 69Additions to Chapter 2 of the OpenGL 4.1 (Core) Specification (OpenGL Operation) 70 71 None. 72 73Additions to Chapter 3 of the OpenGL 4.1 (Core) Specification (Rasterization) 74 75 None. 76 77Additions to Chapter 4 of the OpenGL 4.1 (Core) Specification (Per-Fragment 78Operations and the Frame Buffer) 79 80 Modify the list of accepted tokens for <mode>, <modeRGB> and <modeAlpha> 81 in the description of BlendEquation{i} and BlendEquationSeparate{i}, p.262: 82 83 "... <mode>, <modeRGB>, <modeAlpha> must be one of FUNC_ADD, FUNC_SUBTRACT, 84 FUNC_REVERSE_SUBTRACT, MIN, MAX, FACTOR_MIN_AMD, or FACTOR_MAX_AMD. ..." 85 86 Add to Table 4.1: RGB and Alpha Blend Equations 87 88 +-----------------+---------------------------+-----------------------------+ 89 | Mode | RGB Components | Alpha Component | 90 +-----------------+---------------------------+-----------------------------+ 91 | FACTOR_MIN_AMD | R = min(Rs * Sr, Rd * Dr) | A = min(As * Sa, Ad * Da) | 92 | | G = min(Gs * Sg, Gd * Dg) | | 93 | | B = min(Bs * Sb, Bd * Db) | | 94 +-----------------+---------------------------+-----------------------------+ 95 | FACTOR_MAX_AMD | R = max(Rs * Sr, Rd * Dr) | A = max(As * Sa, Ad * Da) | 96 | | G = max(Gs * Sg, Gd * Dg) | | 97 | | B = max(Bs * Sb, Bd * Db) | | 98 +-----------------+---------------------------+-----------------------------+ 99 100Additions to Chapter 5 of the OpenGL 4.1 (Core) Specification (Special Functions) 101 102 None. 103 104Additions to Chapter 6 of the OpenGL 4.1 (Core) Specification (State and 105State Requests) 106 107 None. 108 109Additions to Appendix A of the OpenGL 4.1 (Core) Specification (Invariance) 110 111 None. 112 113Additions to the AGL/GLX/WGL Specifications 114 115 None. 116 117Errors 118 119 None. 120 121New State 122 123 Modify Table 6.21: Pixel Operations (cont.) p.343 124 125 Change entries for BLEND_EQUATION_ALPHA and BLEND_EQUATION_RGB to: 126 127 +----------------------+---------+---------------+---------------+-------------------------+-------+ 128 | Get Value | Type | Get Command | Initial Value | Description | Sec. | 129 +----------------------+---------+---------------+---------------+-------------------------+-------+ 130 | BLEND_EQUATION_RGB | 8* x Z7 | GetIntegeri_v | FUNC_ADD | RGB Blending Equation | 4.1.7 | 131 | | | | | for Draw Buffer i | | 132 +----------------------+---------+---------------+---------------+-------------------------+-------+ 133 | BLEND_EQUATION_ALPHA | 8* x Z7 | GetIntegeri_v | FUNC_ADD | Alpha Blending Equation | 4.1.7 | 134 | | | | | for Draw Buffer i | | 135 +----------------------+---------+---------------+---------------+-------------------------+-------+ 136 137 * Note that the only change change is that BLEND_EQUATION_RGB and 138 BLEND_EQUATION_ALPHA are now Z7 rather than Z5. 139 140Issues 141 142 None, so far. 143 144Revision History 145 146 Rev. Date Author Changes 147 ---- -------- -------- ----------------------------------------- 148 149 3 04/08/2011 gsellers Fix typo bug in Table 4.1 (caught by Brian Paul) 150 2 09/15/2010 gsellers Update to stand against OpenGL 4.1 151 Add token values. 152 Rename to AMD_blend_minmax_factor. 153 1 03/16/2010 gsellers Initial draft. 154