enum ImageFormat { Image_None = 0, Image_R8G8B8A8 = 1, Image_B8G8R8A8 = 2, Image_R8G8B8 = 3, Image_B8G8R8 = 4, Image_A8 = 9, Image_R4G4B4A4 = 20, Image_B5G5R5A1 = 21, Image_BC7 = 53, Image_PVRTC_RGB_4BPP = 54, Image_PVRTC_RGBA_4BPP = 55, Image_PVRTC_RGB_2BPP = 56, Image_PVRTC_RGBA_2BPP = 57, Image_ETC1_RGB_4BPP = 58, Image_ETC1_RGBA_8BPP = 59, Image_ETC2_RGB = 60, Image_ETC2_RGBA = 61, Image_ETC2_RGBA1 = 62, Image_ATCIC = 63, Image_ATCICA = 64, Image_ATCICI = 65, Image_ETC1A_RGBA_4BPP = 66, Image_Compressed_Start = Image_DXT1, Image_Compressed_End = 99, Image_P8 = 100, Image_G8 = 101, Image_VideoFormat_Start = 200, Image_Y8_U2_V2 = Image_VideoFormat_Start, Image_Y8_U2_V2_A8 = 201, Image_Y4_U2_V2 = 202, Image_VideoFormat_End = Image_Y4_U2_V2, ImageFormat_Mask = 0xFFF, Image_Begin_HWSpecific = 0x1000, Image_X360_R8G8B8A8 = ImageTarget_X360|Image_R8G8B8A8|ImageStorage_Tile, Image_X360_A8 = ImageTarget_X360|Image_A8|ImageStorage_Tile, Image_X360_DXT1 = ImageTarget_X360|Image_DXT1|ImageStorage_Tile, Image_X360_DXT3 = ImageTarget_X360|Image_DXT3|ImageStorage_Tile, Image_X360_DXT5 = ImageTarget_X360|Image_DXT5|ImageStorage_Tile, Image_PS3_R8G8B8A8_SZ = ImageTarget_PS3|Image_R8G8B8A8|ImageStorage_Swizzle, Image_PS3_A8_SZ = ImageTarget_PS3|Image_A8|ImageStorage_Swizzle, Image_PS3_A8R8G8B8 = ImageTarget_PS3|Image_R8G8B8A8, Image_PS3_R8G8B8 = ImageTarget_PS3|Image_R8G8B8, Image_PS3_A8 = ImageTarget_PS3|Image_A8, Image_PS3_DXT1 = ImageTarget_PS3|Image_DXT1, Image_PS3_DXT3 = ImageTarget_PS3|Image_DXT3, Image_PS3_DXT5 = ImageTarget_PS3|Image_DXT5, Image_Wii_R8G8B8A8 = ImageTarget_Wii|Image_R8G8B8A8|ImageStorage_Tile, Image_Wii_A8 = ImageTarget_Wii|Image_A8|ImageStorage_Tile, Image_Wii_DXT1 = ImageTarget_Wii|Image_DXT1, Image_3DS_R8G8B8A8 = ImageTarget_3DS|Image_R8G8B8A8|ImageStorage_Swizzle, Image_3DS_R8G8B8 = ImageTarget_3DS|Image_B8G8R8|ImageStorage_Swizzle, Image_3DS_A8 = ImageTarget_3DS|Image_A8|ImageStorage_Swizzle, Image_3DS_ETC1 = ImageTarget_3DS|Image_ETC1_RGB_4BPP|ImageStorage_Tile, Image_3DS_ETC1_RGBA = ImageTarget_3DS|Image_ETC1_RGBA_8BPP|ImageStorage_Tile, Image_PSVita_DXT1 = ImageTarget_PSVita|Image_DXT1|ImageStorage_Swizzle, Image_PSVita_DXT3 = ImageTarget_PSVita|Image_DXT3|ImageStorage_Swizzle, Image_PSVita_DXT5 = ImageTarget_PSVita|Image_DXT5|ImageStorage_Swizzle, Image_WiiU_DXT1 = ImageTarget_WiiU|Image_DXT1|ImageStorage_Swizzle, Image_WiiU_DXT3 = ImageTarget_WiiU|Image_DXT3|ImageStorage_Swizzle, Image_WiiU_DXT5 = ImageTarget_WiiU|Image_DXT5|ImageStorage_Swizzle, Image_Orbis_BC1 = ImageTarget_Orbis|Image_BC1|ImageStorage_Tile, Image_Orbis_BC2 = ImageTarget_Orbis|Image_BC2|ImageStorage_Tile, Image_Orbis_BC3 = ImageTarget_Orbis|Image_BC3|ImageStorage_Tile, Image_Orbis_BC7 = ImageTarget_Orbis|Image_BC7|ImageStorage_Tile, ImageFormat_Convertible = 0x100000, Image_Conv_R8G8B8A8 = Image_R8G8B8A8|ImageFormat_Convertible, Image_Conv_B8G8R8A8 = Image_B8G8R8A8|ImageFormat_Convertible, Image_Conv_A8 = Image_A8|ImageFormat_Convertible };
List of image formats that can be used for the image data.
ImageFormats are divided into several groups:
Image format lists channels in the order their bytes/words appear in memory, so Image_R8G8B8A8 is stored in memory as Red, Green, Blue, Alpha consecutively, independent of the format byte order. Note that this doesn't match DWORD color representation in either big or little-endian formats.
Members |
Description |
Image_None = 0 |
Image format is not specified. |
Image_R8G8B8A8 = 1 |
The format for textures with an alpha channel and very fine gradients (i.e., normal maps or light halos). Default. |
Image_B8G8R8A8 = 2 |
D3D9 texture compatible format; potentially color DWORD compatible. |
Image_R8G8B8 = 3 |
Format for textures with no alpha channel and very fine gradients i.e., normal maps or light halos.(Generic format; supported on all platforms.) |
Image_A8 = 9 |
Format for black and white textures with an alpha channel and very fine gradients i.e., smoke or light halos. (Generic format; supported on all platforms.) |
Image_PVRTC_RGB_4BPP = 54 |
Compressed. |
Image_PVRTC_RGBA_4BPP = 55 |
Compressed. |
Image_PVRTC_RGB_2BPP = 56 |
Compressed. |
Image_PVRTC_RGBA_2BPP = 57 |
Compressed. |
Image_ETC1_RGB_4BPP = 58 |
Compressed, compatible only with Android. |
Image_ETC1_RGBA_8BPP = 59 |
Compressed. |
Image_ATCIC = 63 |
Compressed, compatible only with Android (RGB). |
Image_ATCICA = 64 |
Compressed, compatible only with Android (RGB w/explicit A). |
Image_ATCICI = 65 |
Compressed, compatible only with Android (RGB w/interpolated A). |
Image_ETC1A_RGBA_4BPP = 66 |
ETC1, with two image planes. The first is RGB, second is the alpha. |
Image_P8 = 100 |
Palleted, 256 -color TGA support, converted to R8G8B8 during loading by default. |
Image_Y8_U2_V2 = Image_VideoFormat_Start |
Formats for video textures. Not usable for any other purpose. Image_Y8_U2_V2 is encoded with three separate data planes. |
Image_Y8_U2_V2_A8 = 201 |
Formats for video textures. Not usable for any other purpose. Image_Y8_U2_V2_A8 is encoded with four separate data planes. |
Image_Begin_HWSpecific = 0x1000 |
Platform/HW-specific (Swizzled/Packed) formats. |
ImageFormat_Convertible = 0x100000 |
The desired format can only be obtained through the Decode function; it is not stored directly. |
Image_Conv_R8G8B8A8 = Image_R8G8B8A8|ImageFormat_Convertible |
Defined for convenience. |
Image_Conv_B8G8R8A8 = Image_B8G8R8A8|ImageFormat_Convertible |
Defined for convenience. |
Image_Conv_A8 = Image_A8|ImageFormat_Convertible |
Defined for convenience. |
Render_Image.h