User Tools

Site Tools


extreme_g:texture_banks

Extreme-G Texture Bank Formats

Extreme-G's level GFX commands use textures from three bank types.


"Level" texture banks

This bank type contains CI8/CI4 textures that are unique to each level. Each bank of this type consists of two files referred to by the level header structures. The first file contains a table of texture meta data structures and the second file simply contains the texture data.

Texture meta data structure

OffsetDescription
008-bit texture width
018-bit texture height
028-bit format ID (01 = CI8, 02 = CI4)
03Padding byte
0432-bit offset of a texture's color index data
0832-bit offset of a texture's palette data

Used by GFX command 02: "level_texture".


"Global" texture bank

This bank type contains CI8 textures that are shared between all levels. The global texture bank is stored LZHUF-compressed at 000C3400 in ROM.

High level structure

OffsetDescription
0032-bit offset pointing to a single palette at the end of the bank
044 padding bytes
08Texture meta data structure table
Texture color index data
0x200 byte texture palette

Texture meta data structure

OffsetDescription
0032-bit offset of a texture's color index data
0416-bit texture width
0616-bit texture height

Used by GFX command 0C: "global_texture".


"Common" texture banks

This bank type contains CI8 textures that are shared between some levels. The structure of this bank type is the same as the “Global” texture bank's structure described above.

The ROM addresses of these banks are defined in LZHUF Table 00001450.

Used by GFX command 0D: "common_texture".

extreme_g/texture_banks.txt · Last modified: 2020/06/14 20:39 by shygoo