BCP (File Format)

From Wexos's Wiki
Revision as of 17:01, 1 May 2024 by Wexos (talk | contribs) (Imported from avsys wiki)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

The BCP (Binary Camera Parameter) file controls the opening camera around the character before the countdown in Mario Kart Wii. There are four BCP files found in Mario Kart Wii. All of them are found into Common.szs. The files are battle_camera.bcp (used for battle), mission_camera.bcp (used for widescreen Competition/Tournament), race_camera.bcp (used for Grand Prix, VS Race, Time Trial and most Competitions/Tournaments) and start_camera.bcp (unknown). All these files found in Mario Kart Wii are 0x130 bytes long.

File Format

The file byte order is always big endian, and it is always 0x130 bytes long.

Offset Type Description
0x00 Int32 Unknown, always 00 00 00 00.
0x04 UInt16 This value stores the ID of the first point to ignore (1-based index), which means after the previous point, it will move to the default character view. Nintendo uses 7 for all files.
0x06 Byte[2] Padding.
0x08 Float Speed blend per camera position.
0x0C Float[3] Scale of all points.
0x18 Float[3] Camera rotation.
0x24 Float[3] Camera start distance.
0x30 Float[3] Start position of the camera.
0x3C Float[3] 1st position of the camera.
0x48 Float[3] 2nd position of the camera.
0x54 Float[3] 3rd position of the camera.
0x60 Float[3] 4th position of the camera.
0x6C Float[3] 5th position of the camera.
0x78 Float[3] 6th position of the camera.
0x84 Float[3] 7th position of the camera.
0x90 Float[3] 8th position of the camera.
0x9C Float[3] 9th position of the camera.
0xA8 Float[3] 10th position of the camera.
0xB4 Float[3] 11th position of the camera.
0xC0 Float[3] 12th position of the camera.
0xCC Float[3] 13th position of the camera.
0xD8 Float[3] 14th position of the camera.
0xE4 Float[3] 15th position of the camera.
0xF0 Float Speed between start and 1st vector.
0xF4 Float Speed between 1st vector and 2nd vector.
0xF8 Float Speed between 2nd vector and 3rd vector.
0xFC Float Speed between 3rd vector and 4th vector.
0x100 Float Speed between 4th vector and 5th vector.
0x104 Float Speed between 5th vector and 6th vector.
0x108 Float Speed between 6th vector and 7th vector.
0x10C Float Speed between 7th vector and 8th vector.
0x110 Float Speed between 8th vector and 9th vector.
0x114 Float Speed between 9th vector and 10th vector.
0x118 Float Speed between 10th vector and 11th vector.
0x11C Float Speed between 11th vector and 12th vector.
0x120 Float Speed between 12th vector and 13th vector.
0x124 Float Speed between 13th vector and 14th vector.
0x128 Float Speed between 14th vector and 15th vector.
0x12C Float Speed between 15th vector and end.
0x130 End of file

Tools

The following tools can handle BCP files: