BLIGHT (File Format)
From Wexos's Wiki
(Redirected from BLIGHT)
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.