#include <mtypes.h>
Describes the dimensions of a texture image, the texel format and pointers to Texel Fetch functions.
Data Fields | |
GLenum | _BaseFormat |
Either GL_RGB, GL_RGBA, GL_ALPHA, GL_LUMINANCE, GL_LUMINANCE_ALPHA, GL_INTENSITY, GL_COLOR_INDEX, GL_DEPTH_COMPONENT or GL_DEPTH_STENCIL_EXT only. | |
GLint | InternalFormat |
Internal format as given by the user. | |
GLuint | Border |
0 or 1 | |
GLuint | Width |
= 2^WidthLog2 + 2*Border | |
GLuint | Height |
= 2^HeightLog2 + 2*Border | |
GLuint | Depth |
= 2^DepthLog2 + 2*Border | |
GLuint | Width2 |
= Width - 2*Border | |
GLuint | Height2 |
= Height - 2*Border | |
GLuint | Depth2 |
= Depth - 2*Border | |
GLuint | WidthLog2 |
= log2(Width2) | |
GLuint | HeightLog2 |
= log2(Height2) | |
GLuint | DepthLog2 |
= log2(Depth2) | |
GLuint | MaxLog2 |
= MAX(WidthLog2, HeightLog2) | |
GLfloat | WidthScale |
used for mipmap LOD computation | |
GLfloat | HeightScale |
used for mipmap LOD computation | |
GLfloat | DepthScale |
used for mipmap LOD computation | |
GLboolean | IsClientData |
Data owned by client? | |
GLboolean | _IsPowerOfTwo |
Are all dimensions powers of two? | |
struct gl_texture_format * | TexFormat |
struct gl_texture_object * | TexObject |
Pointer back to parent object. | |
FetchTexelFuncC | FetchTexelc |
GLchan texel fetch function pointer. | |
FetchTexelFuncF | FetchTexelf |
Float texel fetch function pointer. | |
GLboolean | IsCompressed |
GL_ARB_texture_compression. | |
GLuint | CompressedSize |
GL_ARB_texture_compression. | |
GLuint | RowStride |
Padded width in units of texels. | |
GLuint * | ImageOffsets |
if 3D texture: array [Depth] of offsets to each 2D slice in 'Data', in texels | |
GLvoid * | Data |
Image data, accessed via FetchTexel(). | |
For device driver: | |
void * | DriverData |
Arbitrary device driver data. |
Either GL_RGB, GL_RGBA, GL_ALPHA, GL_LUMINANCE, GL_LUMINANCE_ALPHA, GL_INTENSITY, GL_COLOR_INDEX, GL_DEPTH_COMPONENT or GL_DEPTH_STENCIL_EXT only.
Used for choosing TexEnv arithmetic.
Internal format as given by the user.
GLuint gl_texture_image::Border |
0 or 1
GLuint gl_texture_image::Width |
= 2^WidthLog2 + 2*Border
GLuint gl_texture_image::Height |
= 2^HeightLog2 + 2*Border
GLuint gl_texture_image::Depth |
= 2^DepthLog2 + 2*Border
GLuint gl_texture_image::Width2 |
= Width - 2*Border
GLuint gl_texture_image::Height2 |
= Height - 2*Border
GLuint gl_texture_image::Depth2 |
= Depth - 2*Border
GLuint gl_texture_image::WidthLog2 |
= log2(Width2)
GLuint gl_texture_image::HeightLog2 |
= log2(Height2)
GLuint gl_texture_image::DepthLog2 |
= log2(Depth2)
GLuint gl_texture_image::MaxLog2 |
= MAX(WidthLog2, HeightLog2)
GLfloat gl_texture_image::WidthScale |
used for mipmap LOD computation
GLfloat gl_texture_image::HeightScale |
used for mipmap LOD computation
GLfloat gl_texture_image::DepthScale |
used for mipmap LOD computation
GLboolean gl_texture_image::IsClientData |
Data owned by client?
GLboolean gl_texture_image::_IsPowerOfTwo |
Are all dimensions powers of two?
struct gl_texture_format* gl_texture_image::TexFormat [read] |
struct gl_texture_object* gl_texture_image::TexObject [read] |
Pointer back to parent object.
GLchan texel fetch function pointer.
Float texel fetch function pointer.
GLboolean gl_texture_image::IsCompressed |
GL_ARB_texture_compression.
GL_ARB_texture_compression.
GLuint gl_texture_image::RowStride |
Padded width in units of texels.
GLuint* gl_texture_image::ImageOffsets |
if 3D texture: array [Depth] of offsets to each 2D slice in 'Data', in texels
GLvoid* gl_texture_image::Data |
Image data, accessed via FetchTexel().
Arbitrary device driver data.