| Name |
| |
| ARB_texture_env_add |
| |
| Name Strings |
| |
| GL_ARB_texture_env_add |
| |
| Contact |
| |
| Michael Gold, NVIDIA (gold 'at' nvidia.com) |
| Tom Frisinger, ATI (tfrisinger 'at' atitech.com) |
| |
| Notice |
| |
| Copyright (c) 1999-2013 The Khronos Group Inc. Copyright terms at |
| http://www.khronos.org/registry/speccopyright.html |
| |
| Specification Update Policy |
| |
| Khronos-approved extension specifications are updated in response to |
| issues and bugs prioritized by the Khronos OpenGL Working Group. For |
| extensions which have been promoted to a core Specification, fixes will |
| first appear in the latest version of that core Specification, and will |
| eventually be backported to the extension document. This policy is |
| described in more detail at |
| https://www.khronos.org/registry/OpenGL/docs/update_policy.php |
| |
| Status |
| |
| Complete. Approved by ARB on 12/8/1999 |
| |
| Version |
| |
| Last Modified Date: June 22, 2000 |
| Author Revision: 0.3 |
| |
| Based on: EXT_texture_env_add |
| Date: 1999/03/22 Revision: 1.1 |
| |
| Number |
| |
| ARB Extension #6 |
| |
| Dependencies |
| |
| None |
| |
| Overview |
| |
| New texture environment function ADD is supported with the following |
| equation: |
| Cv = min(1, Cf + Ct) |
| |
| New function may be specified by calling TexEnv with ADD token. |
| |
| One possible application is to add a specular highlight texture to |
| a Gouraud-shaded primitive to emulate Phong shading, in a single |
| pass. |
| |
| |
| New Procedures and Functions |
| |
| None |
| |
| New Tokens |
| |
| Accepted by the <params> parameter of TexEnvf, TexEnvi, TexEnvfv, and |
| TexEnvfi when the <pname> parameter value is GL_TEXTURE_ENV_MODE |
| |
| ADD |
| |
| Additions to Chapter 2 of the GL Specification (OpenGL Operation) |
| |
| None |
| |
| Additions to Chapter 3 of the GL Specification (Rasterization) |
| |
| The description of TEXTURE_ENV_MODE in the first paragraph of |
| section 3.8.9 should be modified as follows: |
| |
| TEXTURE_ENV_MODE may be set to one of REPLACE, MODULATE, DECAL, |
| BLEND or ADD; |
| |
| Table 3.19 is augmented as follows: |
| |
| Base DECAL BLEND ADD |
| Internal Format tex func tex func tex func |
| --------------- ----- ----- --- |
| |
| ALPHA ... ... Rv = Rf |
| ... ... Gv = Gf |
| ... ... Bv = Bf |
| ... ... Av = AfAt |
| |
| LUMINANCE ... ... Rv = min(1, Rf+Lt) |
| (or 1) ... ... Gv = min(1, Gf+Lt) |
| ... ... Bv = min(1, Bf+Lt) |
| ... ... Av = Af |
| |
| LUMINANCE_ALPHA ... ... Rv = min(1, Rf+Lt) |
| (or 2) ... ... Gv = min(1, Gf+Lt) |
| ... ... Bv = min(1, Bf+Lt) |
| ... ... Av = AfAt |
| |
| INTENSITY ... ... Rv = min(1, Rf+It) |
| ... ... Gv = min(1, Gf+It) |
| ... ... Bv = min(1, Bf+It) |
| ... ... Av = min(1, Af+It) |
| |
| RGB ... ... Rv = min(1, Rf+Rt) |
| (or 3) ... ... Gv = min(1, Gf+Gt) |
| ... ... Bv = min(1, Bf+Bt) |
| ... ... Av = Af |
| |
| RGBA ... ... Rv = min(1, Rf+Rt) |
| (or 4) ... ... Gv = min(1, Gf+Gt) |
| ... ... Bv = min(1, Bf+Bt) |
| ... ... Av = AfAt |
| |
| |
| Table 3.19: Decal, blend and add texture functions. |
| |
| |
| Additions to Chapter 4 of the GL Specification (Per-Fragment Operations |
| and the Framebuffer) |
| |
| None |
| |
| 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 / WGL / AGL Specifications |
| |
| None |
| |
| GLX Protocol |
| |
| None |
| |
| Errors |
| |
| None |
| |
| New State |
| |
| The Type of TEXTURE_ENV_MODE in Table F.2 should be changed to |
| |
| 1 * xZ5 |
| |
| New Implementation Dependent State |
| |
| None |
| |
| Revision History |
| |
| 11/09/1999 0.1 |
| - First ARB draft based on the original EXT draft. |
| |
| 1/13/2000 0.2 |
| - Added justification to the overview |
| - Updated to describe modifications to 1.2.1 specification |
| - Added changes to description of TEXTURE_ENV_MODE parameter |
| to TexEnv{if} and TexEnv{if}v |
| - Added change to TEXTURE_ENV_MODE type (Z4 -> Z5) |
| |
| 6/22/2000 0.3 |
| - The addition should saturate to 1. |