Common Data Types

From Burnout Wiki
(Redirected from CGtV3d)

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

Numeric

CGtV3d

A structure comprised of three floating-point component values (x, y, z), bundled into a single unsigned 128-bit value mData. See also RwV3d.

Often used to represent a point in 3D space.

Offset Length Type Description
0x0 0x4 RwReal X component
0x4 0x4 RwReal Y component
0x8 0x4 RwReal Z component
0xC 0x4 Padding

CGtV3dPlus

Very similar to the CGtV3d type, but includes an additional "plus" component. This extra component may be used to represent a different, but related quantity e.g. length.

Offset Length Type Description
0x0 0x4 RwReal X component
0x4 0x4 RwReal Y component
0x8 0x4 RwReal Z component
0xC 0x4 RwReal Plus component

Geometric

CGtPlane

A structure representing a flat 2D plane in 3D space. Equivalent to RwPlane.

Offset Length Type Description
0x0 0x10 CGtV3d Normal
0x0 0x10 RwReal Length

CGtSphere

A structure representing a sphere in 3D space, with a position and radius.

Offset Length Type Description
0x0 0x10 CGtV3d Position
0x0 0x10 RwReal Radius

CGtLine

A structure comprised of two vectors. Used to represent a line in 3D space.

Offset Length Type Name
0x0 0x10 CGtV3d mStartPoint
0x10 0x10 CGtV3d mEndPoint

CGtMatrix3x4

A structure comprised of four 3D vectors. Equivalent to RwMatrix.

Offset Length Type Name
0x0 0x10 CGtV3d mRight
0x10 0x10 CGtV3d mUp
0x20 0x10 CGtV3d mAt
0x30 0x10 CGtV3d mPos

CGtAxisAlignedBox

Equivalent to RwBBox.

Offset Length Type Name Description
0x0 0x10 CGtV3d mSup Supremum vertex
0x10 0x10 CGtV3d mInf Infimum vertex

CGtOrthogonalBox

Offset Length Type Name
0x0 0x40 CGtMatrix3x4 mBox

CGtRGBA

A structure used to represent an RGBA color. It is an alias of the type CGtV4d.

Hashes

CGtHash

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

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.