OpenGL extension EXT.paletted_texture
This module customises the behaviour of the
OpenGL.raw.GL.EXT.paletted_texture to provide a more
Overview (from the spec)
EXT_paletted_texture defines new texture formats and new calls to
support the use of paletted textures in OpenGL. A paletted texture is
defined by giving both a palette of colors and a set of image data which
is composed of indices into the palette. The paletted texture cannot
function properly without both pieces of information so it increases the
work required to define a texture. This is offset by the fact that the
overall amount of texture data can be reduced dramatically by factoring
redundant information out of the logical view of the texture and placing
it in the palette.
Paletted textures provide several advantages over full-color textures:
* As mentioned above, the amount of data required to define a
texture can be greatly reduced over what would be needed for full-color
specification. For example, consider a source texture that has only 256
distinct colors in a 256 by 256 pixel grid. Full-color representation
requires three bytes per pixel, taking 192K of texture data. By putting
the distinct colors in a palette only eight bits are required per pixel,
reducing the 192K to 64K plus 768 bytes for the palette. Now add an
alpha channel to the texture. The full-color representation increases
by 64K while the paletted version would only increase by 256 bytes.
This reduction in space required is particularly important for hardware
accelerators where texture space is limited.
* Paletted textures allow easy reuse of texture data for images
which require many similar but slightly different colored objects.
Consider a driving simulation with heavy traffic on the road. Many of
the cars will be similar but with different color schemes. If
full-color textures are used a separate texture would be needed for each
color scheme, while paletted textures allow the same basic index data to
be reused for each car, with a different palette to change the final
* Paletted textures also allow use of all the palette tricks
developed for paletted displays. Simple animation can be done, along
with strobing, glowing and other palette-cycling effects. All of these
techniques can enhance the visual richness of a scene with very little
The official definition of this extension is available here:
|EXTENSION_NAME = 'GL_EXT_paletted_texture'|
GL_COLOR_INDEX12_EXT = GL_COLOR_INDEX12_EXT
GL_COLOR_INDEX16_EXT = GL_COLOR_INDEX16_EXT
GL_COLOR_INDEX1_EXT = GL_COLOR_INDEX1_EXT
GL_COLOR_INDEX2_EXT = GL_COLOR_INDEX2_EXT
GL_COLOR_INDEX4_EXT = GL_COLOR_INDEX4_EXT
GL_COLOR_INDEX8_EXT = GL_COLOR_INDEX8_EXT
GL_TEXTURE_INDEX_SIZE_EXT = GL_TEXTURE_INDEX_SIZE_EXT
__file__ = '/home/mcfletch/pylive/OpenGL/GL/EXT/paletted_texture.pyc'
__name__ = 'OpenGL.GL.EXT.paletted_texture'
__package__ = 'OpenGL.GL.EXT'
glColorTableEXT = <OpenGL.platform.baseplatform.glColorTableEXT object at 0x76df0d0>
glGetColorTableEXT = <OpenGL.platform.baseplatform.glGetColorTableEXT object at 0x76df110>
glGetColorTableParameterfvEXT = <OpenGL.platform.baseplatform.glGetColorTableParameterfvEXT object at 0x76df210>
glGetColorTableParameterivEXT = <OpenGL.platform.baseplatform.glGetColorTableParameterivEXT object at 0x76df190>