15bd8deadSopenharmony_ciName
25bd8deadSopenharmony_ci
35bd8deadSopenharmony_ci    ARB_texture_env_add
45bd8deadSopenharmony_ci
55bd8deadSopenharmony_ciName Strings
65bd8deadSopenharmony_ci
75bd8deadSopenharmony_ci    GL_ARB_texture_env_add
85bd8deadSopenharmony_ci
95bd8deadSopenharmony_ciContact
105bd8deadSopenharmony_ci
115bd8deadSopenharmony_ci    Michael Gold, NVIDIA (gold 'at' nvidia.com)
125bd8deadSopenharmony_ci    Tom Frisinger, ATI (tfrisinger 'at' atitech.com)
135bd8deadSopenharmony_ci
145bd8deadSopenharmony_ciNotice
155bd8deadSopenharmony_ci
165bd8deadSopenharmony_ci    Copyright (c) 1999-2013 The Khronos Group Inc. Copyright terms at
175bd8deadSopenharmony_ci        http://www.khronos.org/registry/speccopyright.html
185bd8deadSopenharmony_ci
195bd8deadSopenharmony_ciSpecification Update Policy
205bd8deadSopenharmony_ci
215bd8deadSopenharmony_ci    Khronos-approved extension specifications are updated in response to
225bd8deadSopenharmony_ci    issues and bugs prioritized by the Khronos OpenGL Working Group. For
235bd8deadSopenharmony_ci    extensions which have been promoted to a core Specification, fixes will
245bd8deadSopenharmony_ci    first appear in the latest version of that core Specification, and will
255bd8deadSopenharmony_ci    eventually be backported to the extension document. This policy is
265bd8deadSopenharmony_ci    described in more detail at
275bd8deadSopenharmony_ci        https://www.khronos.org/registry/OpenGL/docs/update_policy.php
285bd8deadSopenharmony_ci
295bd8deadSopenharmony_ciStatus
305bd8deadSopenharmony_ci
315bd8deadSopenharmony_ci    Complete. Approved by ARB on 12/8/1999
325bd8deadSopenharmony_ci
335bd8deadSopenharmony_ciVersion
345bd8deadSopenharmony_ci
355bd8deadSopenharmony_ci    Last Modified Date: June 22, 2000
365bd8deadSopenharmony_ci    Author Revision: 0.3
375bd8deadSopenharmony_ci
385bd8deadSopenharmony_ci    Based on:  EXT_texture_env_add
395bd8deadSopenharmony_ci               Date: 1999/03/22 Revision: 1.1
405bd8deadSopenharmony_ci
415bd8deadSopenharmony_ciNumber
425bd8deadSopenharmony_ci
435bd8deadSopenharmony_ci    ARB Extension #6
445bd8deadSopenharmony_ci
455bd8deadSopenharmony_ciDependencies
465bd8deadSopenharmony_ci
475bd8deadSopenharmony_ci    None
485bd8deadSopenharmony_ci
495bd8deadSopenharmony_ciOverview
505bd8deadSopenharmony_ci
515bd8deadSopenharmony_ci    New texture environment function ADD is supported with the following
525bd8deadSopenharmony_ci    equation:
535bd8deadSopenharmony_ci                        Cv = min(1, Cf + Ct)
545bd8deadSopenharmony_ci
555bd8deadSopenharmony_ci    New function may be specified by calling TexEnv with ADD token.
565bd8deadSopenharmony_ci
575bd8deadSopenharmony_ci    One possible application is to add a specular highlight texture to
585bd8deadSopenharmony_ci    a Gouraud-shaded primitive to emulate Phong shading, in a single
595bd8deadSopenharmony_ci    pass.
605bd8deadSopenharmony_ci
615bd8deadSopenharmony_ci
625bd8deadSopenharmony_ciNew Procedures and Functions
635bd8deadSopenharmony_ci
645bd8deadSopenharmony_ci    None
655bd8deadSopenharmony_ci
665bd8deadSopenharmony_ciNew Tokens
675bd8deadSopenharmony_ci
685bd8deadSopenharmony_ci    Accepted by the <params> parameter of TexEnvf, TexEnvi, TexEnvfv, and
695bd8deadSopenharmony_ci    TexEnvfi when the <pname> parameter value is GL_TEXTURE_ENV_MODE
705bd8deadSopenharmony_ci
715bd8deadSopenharmony_ci        ADD
725bd8deadSopenharmony_ci
735bd8deadSopenharmony_ciAdditions to Chapter 2 of the GL Specification (OpenGL Operation)
745bd8deadSopenharmony_ci
755bd8deadSopenharmony_ci        None
765bd8deadSopenharmony_ci
775bd8deadSopenharmony_ciAdditions to Chapter 3 of the GL Specification (Rasterization)
785bd8deadSopenharmony_ci
795bd8deadSopenharmony_ci    The description of TEXTURE_ENV_MODE in the first paragraph of
805bd8deadSopenharmony_ci    section 3.8.9 should be modified as follows:
815bd8deadSopenharmony_ci
825bd8deadSopenharmony_ci    TEXTURE_ENV_MODE may be set to one of REPLACE, MODULATE, DECAL,
835bd8deadSopenharmony_ci    BLEND or ADD;
845bd8deadSopenharmony_ci
855bd8deadSopenharmony_ci    Table 3.19 is augmented as follows:
865bd8deadSopenharmony_ci
875bd8deadSopenharmony_ci            Base            DECAL      BLEND      ADD
885bd8deadSopenharmony_ci        Internal Format     tex func   tex func   tex func
895bd8deadSopenharmony_ci        ---------------     -----      -----      ---
905bd8deadSopenharmony_ci
915bd8deadSopenharmony_ci        ALPHA                ...        ...      Rv = Rf
925bd8deadSopenharmony_ci                             ...        ...      Gv = Gf
935bd8deadSopenharmony_ci                             ...        ...      Bv = Bf
945bd8deadSopenharmony_ci                             ...        ...      Av = AfAt
955bd8deadSopenharmony_ci
965bd8deadSopenharmony_ci        LUMINANCE            ...        ...      Rv = min(1, Rf+Lt)
975bd8deadSopenharmony_ci         (or 1)              ...        ...      Gv = min(1, Gf+Lt)
985bd8deadSopenharmony_ci                             ...        ...      Bv = min(1, Bf+Lt)
995bd8deadSopenharmony_ci                             ...        ...      Av = Af
1005bd8deadSopenharmony_ci
1015bd8deadSopenharmony_ci        LUMINANCE_ALPHA      ...        ...      Rv = min(1, Rf+Lt)
1025bd8deadSopenharmony_ci         (or 2)              ...        ...      Gv = min(1, Gf+Lt)
1035bd8deadSopenharmony_ci                             ...        ...      Bv = min(1, Bf+Lt)
1045bd8deadSopenharmony_ci                             ...        ...      Av = AfAt
1055bd8deadSopenharmony_ci
1065bd8deadSopenharmony_ci        INTENSITY            ...        ...      Rv = min(1, Rf+It)
1075bd8deadSopenharmony_ci                             ...        ...      Gv = min(1, Gf+It)
1085bd8deadSopenharmony_ci                             ...        ...      Bv = min(1, Bf+It)
1095bd8deadSopenharmony_ci                             ...        ...      Av = min(1, Af+It)
1105bd8deadSopenharmony_ci
1115bd8deadSopenharmony_ci        RGB                  ...        ...      Rv = min(1, Rf+Rt)
1125bd8deadSopenharmony_ci        (or 3)               ...        ...      Gv = min(1, Gf+Gt)
1135bd8deadSopenharmony_ci                             ...        ...      Bv = min(1, Bf+Bt)
1145bd8deadSopenharmony_ci                             ...        ...      Av = Af
1155bd8deadSopenharmony_ci
1165bd8deadSopenharmony_ci        RGBA                 ...        ...      Rv = min(1, Rf+Rt)
1175bd8deadSopenharmony_ci        (or 4)               ...        ...      Gv = min(1, Gf+Gt)
1185bd8deadSopenharmony_ci                             ...        ...      Bv = min(1, Bf+Bt)
1195bd8deadSopenharmony_ci                             ...        ...      Av = AfAt
1205bd8deadSopenharmony_ci
1215bd8deadSopenharmony_ci
1225bd8deadSopenharmony_ci        Table 3.19: Decal, blend and add texture functions.
1235bd8deadSopenharmony_ci
1245bd8deadSopenharmony_ci
1255bd8deadSopenharmony_ciAdditions to Chapter 4 of the GL Specification (Per-Fragment Operations
1265bd8deadSopenharmony_ciand the Framebuffer)
1275bd8deadSopenharmony_ci
1285bd8deadSopenharmony_ci    None
1295bd8deadSopenharmony_ci
1305bd8deadSopenharmony_ciAdditions to Chapter 5 of the GL Specification (Special Functions)
1315bd8deadSopenharmony_ci
1325bd8deadSopenharmony_ci    None
1335bd8deadSopenharmony_ci
1345bd8deadSopenharmony_ciAdditions to Chapter 6 of the GL Specification (State and State Requests)
1355bd8deadSopenharmony_ci
1365bd8deadSopenharmony_ci    None
1375bd8deadSopenharmony_ci
1385bd8deadSopenharmony_ciAdditions to the GLX / WGL / AGL Specifications
1395bd8deadSopenharmony_ci
1405bd8deadSopenharmony_ci    None
1415bd8deadSopenharmony_ci
1425bd8deadSopenharmony_ciGLX Protocol
1435bd8deadSopenharmony_ci
1445bd8deadSopenharmony_ci    None
1455bd8deadSopenharmony_ci
1465bd8deadSopenharmony_ciErrors
1475bd8deadSopenharmony_ci
1485bd8deadSopenharmony_ci    None
1495bd8deadSopenharmony_ci
1505bd8deadSopenharmony_ciNew State
1515bd8deadSopenharmony_ci
1525bd8deadSopenharmony_ci    The Type of TEXTURE_ENV_MODE in Table F.2 should be changed to
1535bd8deadSopenharmony_ci
1545bd8deadSopenharmony_ci        1 * xZ5
1555bd8deadSopenharmony_ci
1565bd8deadSopenharmony_ciNew Implementation Dependent State
1575bd8deadSopenharmony_ci
1585bd8deadSopenharmony_ci    None
1595bd8deadSopenharmony_ci
1605bd8deadSopenharmony_ciRevision History
1615bd8deadSopenharmony_ci
1625bd8deadSopenharmony_ci    11/09/1999  0.1
1635bd8deadSopenharmony_ci        - First ARB draft based on the original EXT draft.
1645bd8deadSopenharmony_ci
1655bd8deadSopenharmony_ci    1/13/2000   0.2
1665bd8deadSopenharmony_ci        - Added justification to the overview
1675bd8deadSopenharmony_ci        - Updated to describe modifications to 1.2.1 specification
1685bd8deadSopenharmony_ci        - Added changes to description of TEXTURE_ENV_MODE parameter
1695bd8deadSopenharmony_ci          to TexEnv{if} and TexEnv{if}v
1705bd8deadSopenharmony_ci        - Added change to TEXTURE_ENV_MODE type (Z4 -> Z5)
1715bd8deadSopenharmony_ci
1725bd8deadSopenharmony_ci    6/22/2000   0.3
1735bd8deadSopenharmony_ci        - The addition should saturate to 1.
174