OpenGL.GL.ARB.texture_swizzle
OpenGL extension ARB.texture_swizzle
This module customises the behaviour of the
OpenGL.raw.GL.ARB.texture_swizzle to provide a more
Python-friendly API
Overview (from the spec)
Classic OpenGL texture formats conflate texture storage and
interpretation, and assume that textures represent color. In
modern applications, a significant quantity of textures don't
represent color, but rather data like shadow maps, normal maps,
page tables, occlusion data, etc.. For the latter class of data,
calling the data "RGBA" is just a convenient mapping of what the
data is onto the current model, but isn't an accurate reflection
of the reality of the data.
The existing texture formats provide an almost orthogonal set of
data types, sizes, and number of components, but the mappings of
this storage into what the shader or fixed-function pipeline
fetches is very much non-orthogonal. Previous extensions have
added some of the most demanded missing formats, but the problem
has not been solved once and for all.
This extension provides a mechanism to swizzle the components
of a texture before they are applied according to the texture
environment in fixed-function or as they are returned to the
shader.
The official definition of this extension is available here:
http://www.opengl.org/registry/specs/ARB/texture_swizzle.txt
Functions
Constants
GL_TEXTURE_SWIZZLE_A (36421)
GL_TEXTURE_SWIZZLE_B (36420)
GL_TEXTURE_SWIZZLE_G (36419)
GL_TEXTURE_SWIZZLE_R (36418)
GL_TEXTURE_SWIZZLE_RGBA (36422)