GXT: Difference between revisions
Jump to navigation
Jump to search
m (→File format) |
mNo edit summary |
||
Line 84: | Line 84: | ||
| 0x30 || 0x04 || 00 00 00 00 || - || Texture Type | | 0x30 || 0x04 || 00 00 00 00 || - || Texture Type | ||
|- | |- | ||
| 0x34 || 0x04 || 00 00 00 85 || 0x85000000 || Texture Base Format | | 0x34 || 0x04 || 00 00 00 85 || 0x85000000 (DXT1) || Texture Base Format | ||
|- | |- | ||
| 0x38 || 0x02 || 00 02 || 0x200 (512) || Width | | 0x38 || 0x02 || 00 02 || 0x200 (512) || Width |
Revision as of 20:05, 21 August 2015
GXT is a file format (used on PS Vita and PSP) for storing textures. The purpose of this format is to use it in the runtime without any additional formatting of the data.
Features
- Memory ready format
- Supports multiple textures in one file
- Supports compressed, swizzled, and linear texture layouts
- Supports mipmaps
- Suports palettized textures
File format
The GXT (.gxt) format consists of:
File Layout |
---|
GXT Header |
GXT Specification Texture 1 info |
GXT Specification Texture 2 info |
... |
Texture 1 |
Padding |
Texture 2 |
... |
Palette P4 |
Palette P8 |
- For a single texture:
Offset (h) | Size (h) | Example (h) | Value (conversion) | Notes |
GXT header | ||||
0x00 | 0x04 | 47 58 54 00 | "GXT " | Magic |
0x04 | 0x04 | 03 00 00 10 | 3.01 | Version |
0x08 | 0x04 | 01 00 00 00 | 1 | Number of textures embedded |
0x0C | 0x04 | 40 00 00 00 | 0x40 | Offset of the texture data/ header size |
0x10 | 0x04 | 00 00 02 00 | 0x20000 | Total size of the Textures |
0x14 | 0x04 | 00 00 00 00 | 0 | Number of 16 entry palettes (P4) |
0x18 | 0x04 | 00 00 00 00 | 0 | Number of 256 entry palettes (P8) |
0x1C | 0x04 | 00 00 00 00 | 0 | Padding |
GXT specification per texture | ||||
0x20 | 0x04 | 40 00 00 00 | 0x40 | Offset of the single texture data |
0x24 | 0x04 | 00 00 02 00 | 0x20000 | Size of the single texture data. |
0x28 | 0x04 | FF FF FF FF | - | Index of the palette |
0x2C | 0x04 | 00 00 00 00 | - | Texture flags/Not used? |
0x30 | 0x04 | 00 00 00 00 | - | Texture Type |
0x34 | 0x04 | 00 00 00 85 | 0x85000000 (DXT1) | Texture Base Format |
0x38 | 0x02 | 00 02 | 0x200 (512) | Width |
0x3A | 0x02 | 00 02 | 0x200 (512) | Height |
0x3C | 0x02 | - | - | Mipmaps |
0x3E | 0x02 | - | - | Not Used?/Padding |
Texture type
Name | Value (h) | Description | ||
Texture Type | ||||
SWIZZLED | 0x00 | |||
CUBE | 0x40 | |||
LINEAR | 0x60 | |||
TILED | 0x80 | |||
LINEAR STRIDED | 0x0C |
Texture Base Format
Name | Value (h) | Description | ||
Texture Base Format | ||||
PVRT2BPP | 0x80 | PVR 2 bits per pixel mode | ||
PVRT4BPP | 0x81 | PVR 4 bits per pixel mode | ||
PVRTII2BPP | 0x82 | PVR II 2 bits per pixel mode | ||
PVRTII4BPP | 0x83 | PVR II 4 bits per pixel mode | ||
UBC1 | 0x85 | DXT1 4 bits per pixel | ||
UBC2 | 0x86 | DXT3 8 bits per pixel | ||
UBC3 | 0x87 | DXT5 8 bits per pixel |