BLIGHT (File Format)
From Wexos's Wiki
The BLIGHT (Binary LIGHT) file format in Mario Kart Wii controls lighting effects on characters, karts, items and objects in a track. 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.blight file inside Common.szs.
File Format
The file byte order is always big endian.
File Header
The following table describes the version 2 LIGHT header.
Offset | Type | Description |
---|---|---|
0x00 | Char[4] | File magic. Always LGHT in ASCII. |
0x04 | UInt32 | File size. |
0x08 | UInt32 | Version. Always 2.0.0.0 in Mario Kart Wii. |
0x0C | UInt32 | Unknown. Always 00 00 00 00. |
0x10 | UInt16 | Number of LOBJs. |
0x12 | UInt16 | Number of ambient colors. |
0x14 | Byte | Unknown. Always 00 |
0x15 | Byte | Unknown. Always 00 |
0x16 | Byte | Unknown. Always 00 |
0x17 | Byte | Unknown. Always FF |
0x18 | Byte[16] | Unknown. |
LOBJ
The first light object starts at 0x28. Each entry has the following structure.
Offset | Type | Description |
---|---|---|
0x00 | Char[4] | Section magic. Always LOBJ in ASCII. |
0x04 | UInt32 | Section size. Always 0x50. |
0x08 | UInt32 | Version. Always 2.0.0.0 in Mario Kart Wii. |
0x0C | UInt32 | Unknown. Always 00 00 00 00. |
0x10 | Byte | Spot function. |
0x11 | Byte | Distance attenuation function. |
0x12 | Byte | Unknown. Usually 00 on unused lights, 02 most common. 01 and 04 has also been seen seen. |
0x13 | Byte | Light type. |
0x14 | UInt16 | Ambient color index. |
0x16 | UInt16 | Flag. xxxx xGFE DCBx xxxA.
|
0x18 | Float[3] | Light position. |
0x24 | Float[3] | Aim. |
0x30 | Float | Intensity. |
0x34 | Byte[4] | Light color in RGBA format. |
0x38 | Byte[4] | Specular color in RGBA format. |
0x3C | Float | Specular cut-off angle in degrees. |
0x40 | Float | Distance reference. |
0x44 | Float | Brightness reference. |
0x48 | UInt32 | Unknown. |
0x4C | UInt32 | Unknown. |
Ambient Color
Ambient colors are used by each light object. Each entry has the following structure:
Offset | Type | Information |
---|---|---|
0x00 | Byte[4] | RGBA ambient light color. |
0x04 | UInt32 | Unknown. |
Tools
The following tools can handle BLIGHT files:
- Wexos's Toolbox, by Wexos.