3DS Image Formats
There are different image formats supported on the Nintendo 3DS. Textures are generally large and requires a lot of memory. Choosing the correct texture format is important in order to maximize performance, save memory and recieving best quality contra size. This articles describes the different image formats supported on 3DS.
Image Formats
ID | Name | Bits Per Pixel (BPP) | Type |
---|---|---|---|
0x00 | RGBA8 | 32 | Color + Alpha |
0x01 | RGB8 | 24 | Color |
0x02 | RGB5A1 | 16 | Color + Alpha |
0x03 | RGB565 | 16 | Color |
0x04 | RGBA4 | 16 | Color + Alpha |
0x05 | LA8 | 16 | Luminance + Alpha |
0x06 | HILO8 | 16 | ? |
0x07 | L8 | 8 | Luminance |
0x08 | A8 | 8 | Alpha |
0x09 | LA4 | 8 | Luminance + Alpha |
0x0A | L4 | 4 | Luminance |
0x0B | A4 | 4 | Alpha |
0x0C | ETC1 | 4 | Compressed Color |
0x0D | ETC1A4 | 8 | Compressed Color + Alpha |
RGBA8
RGBA8 is a format which uses 8-bit red, 8-bit green, 8-bit blue and 8-bit alpha. It is not recommended to use as it uses lots of memory.
RGB8
RGB8 is a format which uses 8-bit red, 8-bit green and 8-bit blue.
RGB5A1
RGB5A1 is a format which uses 5-bit red, 5-bit green, 5-bit blue and 1-bit alpha. A pixel is stored in the following layout:
RRRR RGGG GGBB BBBA
RGB565
RGB565 is a format which uses 5-bit red, 6-bit green and 5-bit alpha. A pixel is stored in the following layout:
RRRR RGGG GGGB BBBB
RGBA4
RGBA4 is a format which uses 4-bit red, 4-bit green, 4-bit blue and 4-bit alpha. A pixel is stored in the following layout:
RRRR GGGG BBBB AAAA
LA8
LA8 is a format which uses 8-bit luminance and 8-bit alpha.
HILO8
Unknown.
L8
L8 is a format which uses 8-bit luminance.
A8
A8 is a format which uses 8-bit alpha.
LA4
LA4 is a format which uses 4-bit luminance and 4-bit alpha. The upper nibble stores the luminance value, and the lower nibble stores the alpha.
L4
L4 is a format which uses 4-bit luminance. Since the BPP is lower than 8, 1 byte is actually used for two pixels. The upper nibble stores the second pixel and the lower one stores the first pixel.
A4
A4 is a format which uses 4-bit alpha. Since the BPP is lower than 8, 1 byte is actually used for two pixels. The upper nibble stores the second pixel and the lower one stores the first pixel.
ETC1
ETC1 (Ericsson Texture Compression) is a compressed image format. It compresses each image into 4x4 blocks, where each block splits into two blocks, either vertical or horizontal.
ETC1A4
ETC1A4 is the same compressed format as ETC1, but adds support for alpha. Each alpha is 4-bit, and is stored before the compressed color data.
File Formats
The following file formats support all image formats: