Existing texture formats provide either fixed-point formats with limited range and precision but with compact encodings (allowing 32 or fewer bits per multi-component texel), or floating-point formats with tremendous range and precision but without compact encodings (typically 16 or 32 bits per component).
This extension adds a new packed format and new internal texture format for encoding 3-component vectors (typically RGB colors) with a single 5-bit exponent (biased up by 15) and three 9-bit mantissas for each respective component. There is no sign bit so all three components must be non-negative. The fractional mantissas are stored without an implied 1 to the left of the decimal point. Neither infinity nor not-a-number (NaN) are representable in this shared exponent format.
This 32 bits/texel shared exponent format is particularly well-suited to high dynamic range (HDR) applications where light intensity is typically stored as non-negative red, green, and blue components with considerable range.
Promoted to core in OpenGL 3..
| Modifier and Type | Field and Description |
|---|---|
| public static final int | GL_RGB9_E5_EXT
Accepted by the |
| public static final int | GL_TEXTURE_SHARED_SIZE_EXT
Accepted by the |
| public static final int | GL_UNSIGNED_INT_5_9_9_9_REV_EXT
Accepted by the |
| Access | Constructor and Description |
|---|---|
| private |
| GL_RGB9_E5_EXT | back to summary |
|---|---|
| public static final int GL_RGB9_E5_EXT Accepted by the | |
| GL_TEXTURE_SHARED_SIZE_EXT | back to summary |
|---|---|
| public static final int GL_TEXTURE_SHARED_SIZE_EXT Accepted by the | |
| GL_UNSIGNED_INT_5_9_9_9_REV_EXT | back to summary |
|---|---|
| public static final int GL_UNSIGNED_INT_5_9_9_9_REV_EXT Accepted by the | |
| EXTTextureSharedExponent | back to summary |
|---|---|
| private EXTTextureSharedExponent() | |