• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1XXX - Not complete yet!!!
2
3Name
4
5    EXT_index_texture
6
7Name Strings
8
9    GL_EXT_index_texture
10
11Version
12
13    $Date: 1996/11/21 00:52:26 $ $Revision: 1.4 $
14
15Number
16
17    93
18
19Dependencies
20
21    EXT_paletted_texture is required
22
23Overview
24
25    This extends the definition of texturing so that it is supported
26    in color index mode.  This extension builds on the notion of
27    texture images which have color index internal formats which was
28    introduced in EXT_paletted_texture.
29
30    This extension also introduces a new texture environment function
31    ADD which is useful for combining lighting and texturing in
32    color index mode.
33
34Issues
35
36    * EXT_paletted_texture should probably have defined
37        TEXTURE_BORDER_INDEX
38        TEXTURE_INDEX_SIZE
39      Should we go ahead and introduce them in this extension?
40
41    * ADD is defined differently for RGBA mode in SGIX_texture_add_env
42      Should we add TEXTURE_ENV_SHIFT and TEXTURE_ENV_OFFSET parameters
43      so that the environment functions works similarly?  Probably not.
44
45New Procedures and Functions
46
47    None
48
49New Tokens
50
51    None
52
53Additions to Chapter 2 of the 1.1 Specification (OpenGL Operation)
54
55    None
56
57Additions to Chapter 3 of the 1.1 Specification (Rasterization)
58
59    In Section 3.8, the sentence "Texturing is specified only for RGBA
60    mode; its use in color index mode is undefined." is deleted.  And
61    the sentence "These details include specification of the image to
62    be texture mapped, the means by which the image is filtered when
63    applied to the primitive, and the function that determines what
64    RGBA value is produced given a fragment color and an image value."
65    is modified to read "...determine what RGBA or color index value
66    is produced given a fragment color or index...".
67
68    The remaining discussion of texturing is modified as per
69    EXT_paletted_texture with the following modifications:
70
71    The discussion of restrictions on the <internalFormat> parameter
72    for CopyTexImage1D and CopyTexImage2D is modifies to read: "...except
73    that <internalFormat> may not be specified as 1, 2, 3, or 4 nor may
74    <internalFormat> be specified using one of the color index internal
75    formats unless the GL is in color index mode."
76
77    Use of texture palettes is supported in both RGBA mode and color
78    index mode.  The texture palette is applied to color indexes extracted
79    from the texture array only when the texture palette has a Luminance,
80    Alpha, Luminance Alpha, Intensity, RGB, or RGBA internal format and
81    the GL is in RGBA mode or when the texture palette has a color index
82    internal format and the GL is in color index mode.  If both the
83    texture image and the texture palette have color index internal
84    formats and the GL is in RGBA mode, then the texture is inconsistent.
85
86    In Section 3.8.5 "Texture Environments and Texture Functions", the
87    sentence discussing possible environment parameters is modified to
88    say: "...TEXTURE_ENV_MODE may be set to one of REPLACE, MODULATE,
89    DECAL, BLEND, or ADD...".   Also Tables 3.10 and 3.11 are extended
90    to include the following new row and column
91
92        Cf is the index from the incoming fragment
93        Ct is the filtered texture index
94        Cv is the index computed by the texture environment function
95
96    Base            REPLACE   MODULATE  DECAL     BLEND     ADD
97    Internal Format Tex Func  Tex Func  Tex Func  Tex Func  Tex Func
98    --------------- --------  --------  --------  --------  --------
99    .               .         .         .         .         .
100    .               .         .         .         .         undef
101    .               .         .         .         .         .
102    COLOR_INDEX     Cv=Ct     Cv=Cf*Ct  undef     undef     Cv=Cf+Ct
103    .               .         .         .         .         .
104    .               .         .         .         .         undef
105    .               .         .         .         .         .
106
107    In Section 3.8.6 "Texture Application", is modified to include
108    a description of what happens in color index mode.  "In RGBA
109    mode this function replaces the incoming fragment's R, G, B, and A
110    values.  These are the color values passed to subsequent operations.
111    In color index mode the resulting index is first masked (bitwise
112    ANDed) with 2^n - 1, where n is the number of bits in a color in
113    the color index buffer and then passed on to subsequent operations."
114
115Additions to Chapter 4 of the 1.1 Specification (Per-Fragment Operations
116and the Frame Buffer)
117
118    None
119
120Additions to Chapter 5 of the 1.1 Specification (Special Functions)
121
122    None
123
124Additions to Chapter 6 of the 1.1 Specification (State and State Requests)
125
126    None
127
128Additions to the GLX Specification
129
130    XXX - Not complete yet!!!
131
132GLX Protocol
133
134    XXX - Not complete yet!!!
135
136Dependencies on EXT_paletted_texture
137
138    EXT_paletted_texture is required.  This extension depends on the
139    notion of color index internal formats for texture images as introduced
140    by EXT_paletted_texture.
141
142    EXT_paletted_texture is modified by this extension by allowing texture
143    palettes to be used in color index mode.
144
145Errors
146
147    None
148
149New State
150
151    None
152
153New Implementation Dependent State
154
155    None
156