GL_OES_compressed_paletted_texture#
Supported Hardware#
Series5, Series5XT, Series6, Series6XE, Series6XT
Valid APIs#
OpenGL ES 1.x
Description#
This extension allows the use of paletted textures in OpenGL ES as a compressed texture. Paletted formats are textures which store a small number of colours as a palette, and then the texel array is a simple array of indices into this palette. The benefit of this is that the palette can be cached, and the indices have a lower bandwidth cost than a full colour. This extension allows the colour formats of RGB565, RGBA4444, RGBA551, RGB888 or RGBA8888. Each texel is then allowed to either have a 4- or 8-bit index value, and an appropriate number of palette colours to match.
Note#
In subsequent versions of OpenGL ES, this functionality can be easily replicated using programmable shaders by having a small palette texture, and a vertex attribute or another texture specifying the index to use. This allows the functionality to be much more flexible than provided by this extension, so it was dropped.
Registry Link#
http://www.khronos.org/registry/gles/extensions/OES/OES_compressed_paletted_texture.txt
Example#
// Upload a palletted texture. The size of the data will be dependent on how it was
// compressed and is thus dependent on whatever tool was used.
glCompressedTexImage2D(GL_TEXTURE_2D, 0, GL_PALETTE4_RGB8_OES, 1024, 1024, 0, pixelDataSize,
pixelData);