• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Name
2
3    OES_texture_env_crossbar
4
5Name Strings
6
7    GL_OES_texture_env_crossbar
8
9Contact
10
11
12Notice
13
14    Copyright (c) 2005-2013 The Khronos Group Inc. Copyright terms at
15        http://www.khronos.org/registry/speccopyright.html
16
17Specification Update Policy
18
19    Khronos-approved extension specifications are updated in response to
20    issues and bugs prioritized by the Khronos OpenGL ES Working Group. For
21    extensions which have been promoted to a core Specification, fixes will
22    first appear in the latest version of that core Specification, and will
23    eventually be backported to the extension document. This policy is
24    described in more detail at
25        https://www.khronos.org/registry/OpenGL/docs/update_policy.php
26
27Status
28
29
30Version
31
32    Last modified date: May 18, 2005
33
34Number
35
36    OpenGL ES Extension #21
37
38Dependencies
39
40    OpenGL ES 1.1 is required.
41
42    This extension is based on the ARB_texture_env_crossbar
43    extension specification.
44
45Overview
46
47    This extension adds the capability to use the texture color from
48    other texture units as sources to the COMBINE enviornment
49    function. OpenGL ES 1.1 defined texture combine functions which
50    could use the color from the current texture unit as a source.
51    This extension adds the ability to use the color from any texture
52    unit as a source.
53
54Issues
55
56    Please refer to the ARB_texture_env_crossbar extension specification.
57
58
59New Procedures and Functions
60
61    None
62
63New Tokens
64
65    Accepted by the <params> parameter of TexEnvf, TexEnvi, TexEnvfv,
66    and TexEnviv when the <pname> parameter value is SOURCE0_RGB,
67    SOURCE1_RGB, SOURCE2_RGB, SOURCE0_ALPHA,
68    SOURCE1_ALPHA, or SOURCE2_ALPHA
69
70        TEXTURE<n>                        0x84C0+<n>
71
72    where <n> is in the range 0 to MAX_TEXTURE_UNITS.
73
74Additions to Chapter 2 of the GL Specification (OpenGL Operation)
75
76    None
77
78Additions to Chapter 3 of the GL Specification (Rasterization)
79
80    The arguments Arg0, Arg1 and Arg2 are determined by the values of
81    SOURCE<n>_RGB, SOURCE<n>_ALPHA, OPERAND<n>_RGB and
82    OPERAND<n>_ALPHA. In the following two tables, Ct and At are
83    the filtered texture RGB and alpha values; Ct<n> and At<n> are the
84    filtered texture RGB and alpha values from the texture bound to
85    texture unit <n>; Cc and Ac are the texture environment RGB and
86    alpha values; Cf and Af are the RGB and alpha of the primary color
87    of the incoming fragment; and Cp and Ap are the RGB and alpha
88    values resulting from the previous texture environment. On texture
89    environment 0, Cp and Ap are identical to Cf and Af, respectively.
90    The relationship is described in table 3.5 and 3.6 of the OpenGL ES 1.2
91    specification.
92
93    Added to table 3.5 of the OpenGL ES 1.2 specification:
94
95        SOURCE<n>_RGB       OPERAND<n>_RGB         Argument
96        -------------       --------------         --------
97
98        TEXTURE<n>          SRC_COLOR               Ct<n>
99                            ONE_MINUS_SRC_COLOR     (1-Ct<n>)
100                            SRC_ALPHA               At<n>
101                            ONE_MINUS_SRC_ALPHA     (1-At<n>)
102
103        Table 3.6: COMBINE_RGB texture functions
104
105    Added to table 3.6 of the OpenGL ES 1.2 specification:
106
107
108        SOURCE<n>_ALPHA     OPERAND<n>_ALPHA       Argument
109        ---------------     ----------------       --------
110
111        TEXTURE<n>          SRC_ALPHA               At<n>
112                            ONE_MINUS_SRC_ALPHA     (1-At<n>)
113
114        Table 3.6: COMBINE_ALPHA texture functions
115
116Additions to Chapter 4 of the GL Specification (Per-Fragment Operations
117and the Framebuffer)
118
119    None
120
121Additions to Chapter 5 of the GL Specification (Special Functions)
122
123    None
124
125Additions to Chapter 6 of the GL Specification (State and State Requests)
126
127    None
128
129Additions to Appendix F of the GL Specification (ARB Extensions)
130
131    Inserted after the second paragraph of F.2.12:
132
133    If the value of TEXTURE_ENV_MODE is COMBINE, the texture
134    function associated with a given texture unit is computed using
135    the values specified by SOURCE<n>_RGB, SOURCE<n>_ALPHA,
136    OPERAND<n>_RGB and OPERAND<n>_ALPHA. If TEXTURE<n> is
137    specified as SOURCE<n>_RGB or SOURCE<n>_ALPHA, the texture
138    value from texture unit <n> will be used in computing the texture
139    function for this texture unit.
140
141    Inserted after the third paragraph of F.2.12:
142
143    If a texture environment for a given texture unit references a
144    texture unit that is disabled or does not have a valid texture
145    object bound to it, then it is as if texture blending is disabled
146    for the given texture unit. Every texture unit implicitly
147    references the texture object that is bound to it, regardless
148    of the texture function specified by COMBINE_RGB or COMBINE_ALPHA.
149
150Additions to the GLX Specification
151
152    None
153
154GLX Protocol
155
156    None
157
158Errors
159
160    INVALID_ENUM is generated if <params> value for SOURCE0_RGB,
161    SOURCE1_RGB, SOURCE2_RGB, SOURCE0_ALPHA,
162    SOURCE1_ALPHA or SOURCE2_ALPHA is not one of TEXTURE,
163    CONSTANT, PRIMARY_COLOR, PREVIOUS, or TEXTURE<n>,
164    where <n> is in the range 0 to MAX_TEXTURE_UNITS.
165
166New State
167
168    None
169