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.
| Modifier and Type | Field and Description |
|---|---|
| public static final int | GL_TEXTURE_SWIZZLE_A_EXT
Accepted by the |
| public static final int | GL_TEXTURE_SWIZZLE_B_EXT
Accepted by the |
| public static final int | GL_TEXTURE_SWIZZLE_G_EXT
Accepted by the |
| public static final int | GL_TEXTURE_SWIZZLE_R_EXT
Accepted by the |
| public static final int | GL_TEXTURE_SWIZZLE_RGBA_EXT
Accepted by the |
| Access | Constructor and Description |
|---|---|
| private |
| GL_TEXTURE_SWIZZLE_A_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_SWIZZLE_A_EXT Accepted by the | |
| GL_TEXTURE_SWIZZLE_B_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_SWIZZLE_B_EXT Accepted by the | |
| GL_TEXTURE_SWIZZLE_G_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_SWIZZLE_G_EXT Accepted by the | |
| GL_TEXTURE_SWIZZLE_R_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_SWIZZLE_R_EXT Accepted by the | |
| GL_TEXTURE_SWIZZLE_RGBA_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_SWIZZLE_RGBA_EXT Accepted by the | |
| EXTTextureSwizzle | back to summary |
|---|---|
| private EXTTextureSwizzle() | |