Common Data Types
Data types used commonly by the pre-Paradise Burnout games.
Vectors
CGtV3d
A structure containing a vector of type RwV3d
.
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x10 | u_long128 | mData | 16 bytes holding an RwV3d object |
CGtV3dPlus
To do: Find out what object this holds. |
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x10 | u_long128 | mData | 16 bytes holding an unknown object |
CGtPlane
A structure containing a structure of type RwPlane
.
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x10 | u_long128 | mData | 16 bytes holding an RwPlane object |
Matrices
CGtAxisAlignedBox
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x10 | CGtV3d | mSup | Supremum vertex | |
0x10 | 0x10 | CGtV3d | mInf | Infimum vertex |
CGtLine
A structure comprised of two vectors, used to represent a line in 3D space.
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x10 | CGtV3d | mEndPoint | Start point | |
0x10 | 0x10 | CGtV3d | mEndPoint | End point |
CGtMatrix3x4
A structure comprised of four vectors.
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x10 | CGtV3d | mRight | Right | |
0x10 | 0x10 | CGtV3d | mUp | Up | |
0x20 | 0x10 | CGtV3d | mAt | At | |
0x30 | 0x10 | CGtV3d | mPos | Position |
CGtRGB
A vector with three floats, each representing a primary additive of an RGB color.
Name | Type | Length | Comments |
---|---|---|---|
CGtRGB | CGtV3d | 0x10 | Red, green, and blue additives, respectively |
Hashes
CGtHash
CGtHash
is a derivative of CRC-32—a 32-bit value storing the hash of a given string, generated via a custom hash function. These hashes are used by the Takedown-era games to identify and properly assign values within files such as the Value Database.
GtID
GtID
is a data type used in many Criterion games as an identifier for objects. It is an alias of the type uint64_t
and is used to store a compressed ASCII string.
For example, the string BURNOUT
would be represented by the GtID 6226094955724800000
.
Name | Type | Length | Comments |
---|---|---|---|
GtID | RwUInt64 | 0x8 |
RenderWare data types
To do: Move this section to its own page eventually, as these types originate from the RenderWare engine itself as opposed to any external codebases. |
RwV3d
A structure comprised of three floats, mainly used to represent the location of a point in 3D space.
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x4 | RwReal | x | X value | |
0x4 | 0x4 | RwReal | y | Y value | |
0x8 | 0x4 | RwReal | z | Z value |
RwBBox
A structure defining the supremum and infimum vertices of a bounding box.
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0xC | RwV3d | sup | Supremum vertex | |
0xC | 0xC | RwV3d | inf | Infimum vertex |
RwPlane
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0xC | RwV3d | normal | ||
0xC | 0x4 | RwReal | distance |