15bd8deadSopenharmony_ciXXX - Not complete yet!!!
25bd8deadSopenharmony_ci
35bd8deadSopenharmony_ciName
45bd8deadSopenharmony_ci
55bd8deadSopenharmony_ci    EXT_index_texture
65bd8deadSopenharmony_ci
75bd8deadSopenharmony_ciName Strings
85bd8deadSopenharmony_ci
95bd8deadSopenharmony_ci    GL_EXT_index_texture
105bd8deadSopenharmony_ci
115bd8deadSopenharmony_ciVersion
125bd8deadSopenharmony_ci
135bd8deadSopenharmony_ci    $Date: 1996/11/21 00:52:26 $ $Revision: 1.4 $
145bd8deadSopenharmony_ci
155bd8deadSopenharmony_ciNumber
165bd8deadSopenharmony_ci
175bd8deadSopenharmony_ci    93
185bd8deadSopenharmony_ci
195bd8deadSopenharmony_ciDependencies
205bd8deadSopenharmony_ci
215bd8deadSopenharmony_ci    EXT_paletted_texture is required
225bd8deadSopenharmony_ci
235bd8deadSopenharmony_ciOverview
245bd8deadSopenharmony_ci
255bd8deadSopenharmony_ci    This extends the definition of texturing so that it is supported
265bd8deadSopenharmony_ci    in color index mode.  This extension builds on the notion of
275bd8deadSopenharmony_ci    texture images which have color index internal formats which was
285bd8deadSopenharmony_ci    introduced in EXT_paletted_texture.
295bd8deadSopenharmony_ci
305bd8deadSopenharmony_ci    This extension also introduces a new texture environment function
315bd8deadSopenharmony_ci    ADD which is useful for combining lighting and texturing in
325bd8deadSopenharmony_ci    color index mode.
335bd8deadSopenharmony_ci
345bd8deadSopenharmony_ciIssues
355bd8deadSopenharmony_ci
365bd8deadSopenharmony_ci    * EXT_paletted_texture should probably have defined
375bd8deadSopenharmony_ci        TEXTURE_BORDER_INDEX
385bd8deadSopenharmony_ci        TEXTURE_INDEX_SIZE
395bd8deadSopenharmony_ci      Should we go ahead and introduce them in this extension?
405bd8deadSopenharmony_ci
415bd8deadSopenharmony_ci    * ADD is defined differently for RGBA mode in SGIX_texture_add_env
425bd8deadSopenharmony_ci      Should we add TEXTURE_ENV_SHIFT and TEXTURE_ENV_OFFSET parameters
435bd8deadSopenharmony_ci      so that the environment functions works similarly?  Probably not.
445bd8deadSopenharmony_ci
455bd8deadSopenharmony_ciNew Procedures and Functions
465bd8deadSopenharmony_ci
475bd8deadSopenharmony_ci    None
485bd8deadSopenharmony_ci
495bd8deadSopenharmony_ciNew Tokens
505bd8deadSopenharmony_ci
515bd8deadSopenharmony_ci    None
525bd8deadSopenharmony_ci
535bd8deadSopenharmony_ciAdditions to Chapter 2 of the 1.1 Specification (OpenGL Operation)
545bd8deadSopenharmony_ci
555bd8deadSopenharmony_ci    None
565bd8deadSopenharmony_ci
575bd8deadSopenharmony_ciAdditions to Chapter 3 of the 1.1 Specification (Rasterization)
585bd8deadSopenharmony_ci
595bd8deadSopenharmony_ci    In Section 3.8, the sentence "Texturing is specified only for RGBA
605bd8deadSopenharmony_ci    mode; its use in color index mode is undefined." is deleted.  And
615bd8deadSopenharmony_ci    the sentence "These details include specification of the image to
625bd8deadSopenharmony_ci    be texture mapped, the means by which the image is filtered when
635bd8deadSopenharmony_ci    applied to the primitive, and the function that determines what
645bd8deadSopenharmony_ci    RGBA value is produced given a fragment color and an image value."
655bd8deadSopenharmony_ci    is modified to read "...determine what RGBA or color index value
665bd8deadSopenharmony_ci    is produced given a fragment color or index...".
675bd8deadSopenharmony_ci
685bd8deadSopenharmony_ci    The remaining discussion of texturing is modified as per
695bd8deadSopenharmony_ci    EXT_paletted_texture with the following modifications:
705bd8deadSopenharmony_ci
715bd8deadSopenharmony_ci    The discussion of restrictions on the <internalFormat> parameter
725bd8deadSopenharmony_ci    for CopyTexImage1D and CopyTexImage2D is modifies to read: "...except
735bd8deadSopenharmony_ci    that <internalFormat> may not be specified as 1, 2, 3, or 4 nor may
745bd8deadSopenharmony_ci    <internalFormat> be specified using one of the color index internal
755bd8deadSopenharmony_ci    formats unless the GL is in color index mode."
765bd8deadSopenharmony_ci
775bd8deadSopenharmony_ci    Use of texture palettes is supported in both RGBA mode and color
785bd8deadSopenharmony_ci    index mode.  The texture palette is applied to color indexes extracted
795bd8deadSopenharmony_ci    from the texture array only when the texture palette has a Luminance,
805bd8deadSopenharmony_ci    Alpha, Luminance Alpha, Intensity, RGB, or RGBA internal format and
815bd8deadSopenharmony_ci    the GL is in RGBA mode or when the texture palette has a color index
825bd8deadSopenharmony_ci    internal format and the GL is in color index mode.  If both the
835bd8deadSopenharmony_ci    texture image and the texture palette have color index internal
845bd8deadSopenharmony_ci    formats and the GL is in RGBA mode, then the texture is inconsistent.
855bd8deadSopenharmony_ci
865bd8deadSopenharmony_ci    In Section 3.8.5 "Texture Environments and Texture Functions", the
875bd8deadSopenharmony_ci    sentence discussing possible environment parameters is modified to
885bd8deadSopenharmony_ci    say: "...TEXTURE_ENV_MODE may be set to one of REPLACE, MODULATE,
895bd8deadSopenharmony_ci    DECAL, BLEND, or ADD...".   Also Tables 3.10 and 3.11 are extended
905bd8deadSopenharmony_ci    to include the following new row and column
915bd8deadSopenharmony_ci
925bd8deadSopenharmony_ci        Cf is the index from the incoming fragment
935bd8deadSopenharmony_ci        Ct is the filtered texture index
945bd8deadSopenharmony_ci        Cv is the index computed by the texture environment function
955bd8deadSopenharmony_ci
965bd8deadSopenharmony_ci    Base            REPLACE   MODULATE  DECAL     BLEND     ADD
975bd8deadSopenharmony_ci    Internal Format Tex Func  Tex Func  Tex Func  Tex Func  Tex Func
985bd8deadSopenharmony_ci    --------------- --------  --------  --------  --------  --------
995bd8deadSopenharmony_ci    .               .         .         .         .         .
1005bd8deadSopenharmony_ci    .               .         .         .         .         undef
1015bd8deadSopenharmony_ci    .               .         .         .         .         .
1025bd8deadSopenharmony_ci    COLOR_INDEX     Cv=Ct     Cv=Cf*Ct  undef     undef     Cv=Cf+Ct
1035bd8deadSopenharmony_ci    .               .         .         .         .         .
1045bd8deadSopenharmony_ci    .               .         .         .         .         undef
1055bd8deadSopenharmony_ci    .               .         .         .         .         .
1065bd8deadSopenharmony_ci
1075bd8deadSopenharmony_ci    In Section 3.8.6 "Texture Application", is modified to include
1085bd8deadSopenharmony_ci    a description of what happens in color index mode.  "In RGBA
1095bd8deadSopenharmony_ci    mode this function replaces the incoming fragment's R, G, B, and A
1105bd8deadSopenharmony_ci    values.  These are the color values passed to subsequent operations.
1115bd8deadSopenharmony_ci    In color index mode the resulting index is first masked (bitwise
1125bd8deadSopenharmony_ci    ANDed) with 2^n - 1, where n is the number of bits in a color in
1135bd8deadSopenharmony_ci    the color index buffer and then passed on to subsequent operations."
1145bd8deadSopenharmony_ci
1155bd8deadSopenharmony_ciAdditions to Chapter 4 of the 1.1 Specification (Per-Fragment Operations
1165bd8deadSopenharmony_ciand the Frame Buffer)
1175bd8deadSopenharmony_ci
1185bd8deadSopenharmony_ci    None
1195bd8deadSopenharmony_ci
1205bd8deadSopenharmony_ciAdditions to Chapter 5 of the 1.1 Specification (Special Functions)
1215bd8deadSopenharmony_ci
1225bd8deadSopenharmony_ci    None
1235bd8deadSopenharmony_ci
1245bd8deadSopenharmony_ciAdditions to Chapter 6 of the 1.1 Specification (State and State Requests)
1255bd8deadSopenharmony_ci
1265bd8deadSopenharmony_ci    None
1275bd8deadSopenharmony_ci
1285bd8deadSopenharmony_ciAdditions to the GLX Specification
1295bd8deadSopenharmony_ci
1305bd8deadSopenharmony_ci    XXX - Not complete yet!!!
1315bd8deadSopenharmony_ci
1325bd8deadSopenharmony_ciGLX Protocol
1335bd8deadSopenharmony_ci
1345bd8deadSopenharmony_ci    XXX - Not complete yet!!!
1355bd8deadSopenharmony_ci
1365bd8deadSopenharmony_ciDependencies on EXT_paletted_texture
1375bd8deadSopenharmony_ci
1385bd8deadSopenharmony_ci    EXT_paletted_texture is required.  This extension depends on the
1395bd8deadSopenharmony_ci    notion of color index internal formats for texture images as introduced
1405bd8deadSopenharmony_ci    by EXT_paletted_texture.
1415bd8deadSopenharmony_ci
1425bd8deadSopenharmony_ci    EXT_paletted_texture is modified by this extension by allowing texture
1435bd8deadSopenharmony_ci    palettes to be used in color index mode.
1445bd8deadSopenharmony_ci
1455bd8deadSopenharmony_ciErrors
1465bd8deadSopenharmony_ci
1475bd8deadSopenharmony_ci    None
1485bd8deadSopenharmony_ci
1495bd8deadSopenharmony_ciNew State
1505bd8deadSopenharmony_ci
1515bd8deadSopenharmony_ci    None
1525bd8deadSopenharmony_ci
1535bd8deadSopenharmony_ciNew Implementation Dependent State
1545bd8deadSopenharmony_ci
1555bd8deadSopenharmony_ci    None
156