Back to the OpenGL extension cross reference

GL_EXT_index_texture


XXX - Not complete yet!!!

Name


    EXT_index_texture

Name Strings


    GL_EXT_index_texture

Version


    $Date: 1996/11/21 00:52:26 $ $Revision: 1.4 $

Number


    93

Dependencies


    EXT_paletted_texture is required

Overview


    This extends the definition of texturing so that it is supported
in color index mode. This extension builds on the notion of
texture images which have color index internal formats which was
introduced in EXT_paletted_texture.

This extension also introduces a new texture environment function
ADD which is useful for combining lighting and texturing in
color index mode.

Issues


    * EXT_paletted_texture should probably have defined
TEXTURE_BORDER_INDEX
TEXTURE_INDEX_SIZE
Should we go ahead and introduce them in this extension?

* ADD is defined differently for RGBA mode in SGIX_texture_add_env
Should we add TEXTURE_ENV_SHIFT and TEXTURE_ENV_OFFSET parameters
so that the environment functions works similarly? Probably not.

New Procedures and Functions


    None

New Tokens


    None

Additions to Chapter 2 of the 1.1 Specification (OpenGL Operation)


    None

Additions to Chapter 3 of the 1.1 Specification (Rasterization)


    In Section 3.8, the sentence "Texturing is specified only for RGBA
mode; its use in color index mode is undefined." is deleted. And
the sentence "These details include specification of the image to
be texture mapped, the means by which the image is filtered when
applied to the primitive, and the function that determines what
RGBA value is produced given a fragment color and an image value."
is modified to read "...determine what RGBA or color index value
is produced given a fragment color or index...".

The remaining discussion of texturing is modified as per
EXT_paletted_texture with the following modifications:

The discussion of restrictions on the <internalFormat> parameter
for CopyTexImage1D and CopyTexImage2D is modifies to read: "...except
that <internalFormat> may not be specified as 1, 2, 3, or 4 nor may
<internalFormat> be specified using one of the color index internal
formats unless the GL is in color index mode."

Use of texture palettes is supported in both RGBA mode and color
index mode. The texture palette is applied to color indexes extracted
from the texture array only when the texture palette has a Luminance,
Alpha, Luminance Alpha, Intensity, RGB, or RGBA internal format and
the GL is in RGBA mode or when the texture palette has a color index
internal format and the GL is in color index mode. If both the
texture image and the texture palette have color index internal
formats and the GL is in RGBA mode, then the texture is inconsistent.

In Section 3.8.5 "Texture Environments and Texture Functions", the
sentence discussing possible environment parameters is modified to
say: "...TEXTURE_ENV_MODE may be set to one of REPLACE, MODULATE,
DECAL, BLEND, or ADD...". Also Tables 3.10 and 3.11 are extended
to include the following new row and column

Cf is the index from the incoming fragment
Ct is the filtered texture index
Cv is the index computed by the texture environment function

Base REPLACE MODULATE DECAL BLEND ADD
Internal Format Tex Func Tex Func Tex Func Tex Func Tex Func
--------------- -------- -------- -------- -------- --------
. . . . . .
. . . . . undef
. . . . . .
COLOR_INDEX Cv=Ct Cv=Cf*Ct undef undef Cv=Cf+Ct
. . . . . .
. . . . . undef
. . . . . .

In Section 3.8.6 "Texture Application", is modified to include
a description of what happens in color index mode. "In RGBA
mode this function replaces the incoming fragment's R, G, B, and A
values. These are the color values passed to subsequent operations.
In color index mode the resulting index is first masked (bitwise
ANDed) with 2^n - 1, where n is the number of bits in a color in
the color index buffer and then passed on to subsequent operations."

Additions to Chapter 4 of the 1.1 Specification (Per-Fragment Operations and the Frame Buffer)


    None

Additions to Chapter 5 of the 1.1 Specification (Special Functions)


    None

Additions to Chapter 6 of the 1.1 Specification (State and State Requests)


    None

Additions to the GLX Specification


    XXX - Not complete yet!!!

GLX Protocol


    XXX - Not complete yet!!!

Dependencies on EXT_paletted_texture


    EXT_paletted_texture is required.  This extension depends on the
notion of color index internal formats for texture images as introduced
by EXT_paletted_texture.

EXT_paletted_texture is modified by this extension by allowing texture
palettes to be used in color index mode.

Errors


    None

New State


    None

New Implementation Dependent State


    None

Implementation Support


   List of OpenGL implementations supporting the GL_EXT_index_texture extension

Original File


   Original text file for the GL_EXT_index_texture extension


Page generated on Sun Nov 20 18:37:34 2005