Path Tracer
|
#include <texture.h>
Public Attributes | |
unsigned int | mWidth |
unsigned int | mHeight |
char | achFormatHint [HINTMAXTEXTURELEN] |
C_STRUCT aiTexel * | pcData |
C_STRUCT aiString | mFilename |
Helper structure to describe an embedded texture
Normally textures are contained in external files but some file formats embed them directly in the model file. There are two types of embedded textures:
Embedded textures are referenced from materials using strings like "*0", "*1", etc. as the texture paths (a single asterisk character followed by the zero-based index of the texture in the aiScene::mTextures array).
char aiTexture::achFormatHint[HINTMAXTEXTURELEN] |
A hint from the loader to make it easier for applications to determine the type of embedded textures.
If mHeight != 0 this member is show how data is packed. Hint will consist of two parts: channel order and channel bitness (count of the bits for every color channel). For simple parsing by the viewer it's better to not omit absent color channel and just use 0 for bitness. For example:
C_STRUCT aiString aiTexture::mFilename |
Texture original filename
Used to get the texture reference
unsigned int aiTexture::mHeight |
Height of the texture, in pixels
If this value is zero, pcData points to an compressed texture in any format (e.g. JPEG).
unsigned int aiTexture::mWidth |
Width of the texture, in pixels
If mHeight is zero the texture is compressed in a format like JPEG. In this case mWidth specifies the size of the memory area pcData is pointing to, in bytes.
C_STRUCT aiTexel* aiTexture::pcData |
Data of the texture.
Points to an array of mWidth * mHeight aiTexel's. The format of the texture data is always ARGB8888 to make the implementation for user of the library as easy as possible. If mHeight = 0 this is a pointer to a memory buffer of size mWidth containing the compressed texture data. Good luck, have fun!