The most annoying .dat
file.
FilterMaps.dat
contains 17 rhombus tiles, each mostly 49 rows high,
with each row having a stride of columns as pixels, similar to Blendomatic tiles.
Each pixel contains a reference to an ICM which uses corresponding LightMaps for shading.
struct filter_maps {
struct filter_map {
long header_length; // number of bytes to read this filter map
long tile_size_y; // seems to be 49, 25, or 73
while (tile_size_y--) {
uint8 crap1; // read 1 byte
int remaining = crap1 & 0xFF; // bitwise for reading more crap
do {
uint16 crap2; // read 2 bytes
int check2 = crap2 & 0x0F; // bitwise for reading further crap
do {
uint24 crap3; // read 3 bytes
// some of this crap is then loaded into the graphics rendering
check2--;
} while (check2);
check1--;
} while (check1);
}
}
}[17];