Difference between revisions of "BLMAP (File Format)"

From Custom Mario Kart
Jump to navigation Jump to search
Line 1: Line 1:
The '''BLMAP''' ('''B'''inary '''L'''ight '''MAP''') filetype controls lighting mapping. It is always seen in the ''posteffect'' folder inside an [[U8]]. This file is not required for a track to load, as there is a ''default.blmap'' file inside [[Filesystem/Race/Common.szs|Common.szs]].
+
The '''BLMAP''' ('''B'''inary '''L'''ight '''MAP''') filetype controls lighting mapping. It is always seen in the ''posteffect'' folder inside an [[U8]]. This file is not required for a track to load, as there is a ''default.blmap'' file inside [[Filesystem/Race/Common.szs|Common.szs]]. The exact purpose of BLMAP files is currently unknown.
  
 
= File Format =
 
= File Format =

Revision as of 23:17, 4 December 2022

The BLMAP (Binary Light MAP) filetype controls lighting mapping. It is always seen in the posteffect folder inside an U8. This file is not required for a track to load, as there is a default.blmap file inside Common.szs. The exact purpose of BLMAP files is currently unknown.

File Format

File Header

The following table describes the LIGHT header.

Offset Type Description
0x00 String File magic. Always LMAP in ASCII.
0x04 UInt32 File size. Always 0x298 in MKW.
0x08 UInt8 Version. Always 00 in MKW.
0x0C UInt32 Unknown. Always 00 00 00 00.
0x10 Uint16 Number of LTEXs. Always 0x02 in MKW.
0x12 Byte[14] Padding.

Light Texture data (LTEX)

The first object starts at 0x20. These addresses are relative to the start of the object.

Offset Type Description
0x00 String Section magic. Always LTEX in ASCII.
0x04 UInt32 Section size. Always 0x13C.
0x08 Uint8 Version. Always 00 in MKW.
0x09 Byte[3] Padding
0x0C Uint32 Unknown. Always 00 00 00 00.
0x10 Uint16 Number of subobjects (N). Always 0x20.
0x14 Char[32] Name of the texture this entry must be linked to
0x34 Uint8 Type
0x35 Byte[3] Padding
0x38 Uint32 Length of the following list (N * 8)
0x3C Sub[N] A list of entries with the following structure:
Offset Type Description
0x00 Float Intensity of the lighting (must be between 0.0 and 1.0)
0x04 Uint8 Unknown index
0x05 Uint8[3] Unknown.