Common Data Types

From Burnout Wiki
Revision as of 04:45, 1 February 2023 by Burninrubber0 (talk | contribs) (Update and normalize information.)

Data types used commonly by the pre-Paradise Burnout games.

Shared data types

CGtV3d

A structure containing a vector of type RwV3d.

Offset Length Type Name Description Comments
0x0 0x10 u_long128 mData 16-byte integer holding an RwV3d object

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

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

Hmmm...
Hmmm...
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