texHeaders.bin File Format
Categories:
struct TexHeader.bin
{
MimeType "0DHT" ; // NOT asciiz. '0' = 0x30. This is mimetype "TexHeaDer0"
ulong version; // 1
ulong nTextures; //ce 01 00 00
TexBody TexBodies[nTextures];
};
TexBody
{
TexBegin TexBegin;
Asciiz *PaaFile;//"data\icons\m4a3_cco_ca.paa"
//"fnfal\data\fnfal_smdi.paa"
TexEnd TexEnd;
};
- Either BIS have finally learned to use relative file addressing (unlikely), or, more inconsistency for us
where the root is presumed to be \CA\ (or anything else they arbitrarily decide to use).
- It looks like yet-another rule break with lack of ofpec_tags in front of pbo model names, but, it's their game, they can destroy it any way they want to.
TexBegin
{
ulong Always1;
ulong Always0;
_bgraDecimal AvgerageColorDecimal; //AVGCTAGG in PAA (reversed argb format) floating-point equivalent
_bgraHex AverageColorHex; //AVGCTAGG in PAA file (reversed argb format)
_bgraHex MaxColorHex; //MAXCTAGG in PAA file
ulong Always0;
ulong AlwaysDefault;//0xFFFFFFFF
ulong FlagBytes; // 01 01 00 10 typical
ulong SameCount; // see note
ulong TextureType; // 6 = DXT1, 10 = DXT5
byte Always1;
byte Always1;
};
TexEnd
{
ulong Flag;
ulong nMipmaps;
MipMap MipMaps[nMipmaps];
ushort SomeShort
ushort AnotherShort;
};
- SameCount always == nMipmaps
MipMap
{
ushort width;//typical 0040,0200
ushort height;//typical 0020,0100
ushort Always0;
ushort value3;//generally 0x030a
ulong dataOffset; //position of mipmap data in paa file
};
_bgraHex
{
byte blue, green, red, alpha;
}; _bgraDecimal {
float blue, green, red, alpha;
};