Burnout 2 Race Car: Difference between revisions

→‎Versions: reformatted to be like the Takedown era pages
(→‎Header: Fill out some more offsets)
(→‎Versions: reformatted to be like the Takedown era pages)
 
(5 intermediate revisions by 2 users not shown)
Line 1:
The '''Burnout 2 Race Car''' file format is used to store the model and texture data for a particular vehicle in Burnout 2: Point of Impact. It uses the file extension <code>.RCFRCX</code> for the in-game model variant, and <code>.RCXRCF</code> for the higher-detail model variant used in the garage.
 
This format contains most of the data related to any given vehicle, including mesh data, Level of Detail models, texture data, pointers to external files, deformation matrices and collision detection parameters.
Line 5:
= Versions =
{| class="wikitable"
! Format version !! Game !! Date
! rowspan="2" |
! colspan="3" | Race Car version
|-
| 9 <span style=float:right;>(0x0009)</span> || Preview Build || Jul 2002
! 0x09 || 0x0A || 0x0B
|-
| Date10 ||<span Jul 2002style=float:right;>(0x000A)</span> || EarlyBeta AugCandidate<br>Promotional 2002Demo || LateEarly Aug 2002
|-
| 11 <span style=float:right;>(0x000B)</span> || Final Game <sup>(PS2)</sup> || Late Aug 2002
| Games || Preview Build || Beta Candidate<br>Promotional Demo || Final Game
|-
| 8193 <span style=float:right;>(0x2001)</span> || Final Game <sup>(Xbox)</sup> || < Mar 2003
|-
| 8195 <span style=float:right;>(0x2003)</span> || Final Game <sup>(GCN)</sup> || Mar 2003
|}
 
= Header (Version 0x0B) =
=== Version 0x0B (WIP) ===
{|class="wikitable"
!Offset
Line 24 ⟶ 26:
!Notes
|-
| 0x00 || Version code || uint32_tint || <tt>0xB2CA000B</tt> || This value is <tt>0xB2CA2001</tt> for Xbox race car files, and <tt> 0xB2CA2003</tt> for GameCube ones.
|-
| 0x04 || Loaded state || uint32_tuint || 0x00 ||
|-
| 0x08 || File size in bytes || uint8_tuint32 || ||
|-
| 0x0C || Object radius || float || ||
Line 34 ⟶ 36:
| 0x10 || Wheel radii || float[4] || ||
|-
| 0x28 || Main object count || int32_tint || ||
|-
| 0x2C || ShadowFlying object count || int32_tint || ||
|-
| 0x30 || Wheel object count || int32_tint || ||
|-
| 0x34 || Shadow wheel object count || int32_tint || ||
|-
| 0x38 || Main objects offset || Vehicle Object* || ||
|-
| 0x880x3C || PointerFlying torender chassisobject texturecount || Texture*int[] || ||
|-
| 0x5C || Flying object(s) offset || Vehicle Object*[] || ||
|-
| 0x7C || Wheel object offset || Vehicle Object* || ||
|-
| 0x80 || Main shadow object offset || Vehicle Object* || ||
|-
| 0x84 || Shadow wheel object offset || Vehicle Object* || ||
|-
| 0x88 || Main texture offset || Texture* || ||
|-
| 0x8C || Glass opacity || float || ||
|-
| 0xCD80x90 || Pointer to speedometer textureTags || Texture*RwMatrixTag[] || ||
|-
| 0xC90 || Front lights attach point || int16 || ||
|-
| 0xC92 || Rear lights attach point || int16 || ||
|-
| 0xC94 || Brake lights attach point || int16 || ||
|-
| 0xC96 || Running lights attach point || int16 || ||
|-
| 0xC98 || Reverse lights attach point || int16 || ||
|-
| 0xC9A || Left indicators attach point || int16 || ||
|-
| 0xC9C || Right indicators attach point || int16 || ||
|-
| 0xC9E || Blues and twos (blue) attach point || int16 || ||
|-
| 0xCA0 || Blues and twos (red) attach point || int16 || ||
|-
| 0xCA2 || Strobe lights attach point || int16 || ||
|-
| 0xCA4 || Exhaust attach point || int16 || ||
|-
| 0xCA6 || Glass attach point || int16 || ||
|-
| 0xCA8 || Steam attach point || int16 || ||
|-
| 0xCAA || Fire attach point || int16 || ||
|-
| 0xCAC || Kojack attach point || int16 || ||
|-
| 0xCB0 || Bounding box || Bounding Box || ||
|-
| 0xCD0 || Use bounding hull? || bool ||
|-
| 0xCD4 || Total vertex count || int || ||
|-
| 0xCD8 || Speedometer texture offset || Texture* || ||
|-
| 0xCDC || BSM offsets || BSM Sound Model*[2] || ||
|}