Data Format Details
This section covers information on data formats supported by The Game Texture Loader
Basic Formats
- FORMAT_RGB,
- FORMAT_BGR,
- FORMAT_RGBA
- FORMAT_BGRA,
- FORMAT_ABGR,
These types represent basic Red, Green, Blue and optionally Alpha image types. Each channel in these images is 8bit giving a total of 24 or 32bit per pixel.
Compressed formats
- FORMAT_DXT1,
- FORMAT_DXT2
- FORMAT_DXT3,
- FORMAT_DXT4,
- FORMAT_DXT5,
- FORMAT_3DC,
These repsents compressed texture formats. 3DC is ATI's compressed normal map format
Floating Point Formats
- FORMAT_R32G32B32A32F
- FORMAT_R16G16B16A16F
- FORMAT_G16R16F
- FORMAT_G32R32F
- FORMAT_R16F
- FORMAT_R32F
These represent floating point texture formats; unlike standard formats each channel is represented by a floating point value. The number of bits dedicated to each channel depends on the format. Currently 16 and 32bit per channel are supported in 4, 2 and 1 channel configurations.
Extended Formats
- FORMAT_R5G6B5
- FORMAT_X1R5G5B5
- FORMAT_A1R5G5B5
- FORMAT_L8
- FORMAT_A8L8
- FORMAT_L16
- FORMAT_A8
- FORMAT_G16R16
- FORMAT_RGBA16
- FORMAT_RGB16
- FORMAT_A16
- FORMAT_A16L16
These types represent some extended texture formats, mostly these are for DDS files, however some are also used by the PNG format as detailed below.
The first format gives support for 16bit per pixel images with the two following allowing support for 15bit and 15bit with alpha images.
L8 and A8 represent an image which is made up of lumiance or alpha data only, with the A8L8 format combining the two. These formats have 8bit per channel and are compliment by the 16bit versions. G16R16 and A16L16 are technically the same type, however both versions are given to supply more semantic information on the type of data to expect.
RGBA16 and RGB16 are specifically to support 16bit per channel PNG images at the moment. At the time of writing they are currently untested.
Normal Map Formats
- FORMAT_V8U8
- FORMAT_V16U16
- FORMAT_Q8W8V8U8
These types represent normal map formats as defined by NVIDIA's nv_texture_shader OpenGL extension and are used with DDS files.