Deformation Model

From Burnout Wiki
DeformationModel
aka {{{othernames}}}
No Example
Resource names *DeformationModel
*Vehicle ID, e.g. PUSMC01
Type ID 0x10004
Category Game-specific
(Burnout Paradise)
Memory
distribution
Main Memory only
Imports Unknown
Imported by Unknown
Editor
available?
No


Development
Information on versions of the Deformation Model resource type used during development.

Deformation models define how a vehicle should deform during collisions.

This resource type was used in early development builds of Burnout Paradise. It was superseded by the Streamed Deformation type.

Structures

BrnPhysics::Deformation::ModelData

Offset Length Type Name Description Comments
0x0 0x4 uint32_t muVersion Unknown version number
0x4 0x4 uint32_t muSizeInBytes
0x8 0x1 uint8_t muNumBodyParts
0x9 0x1 uint8_t muNumBodies
0xA 0x1 uint8_t muNumJoints
0xB 0x1 uint8_t muNumJointDynamics
0xC 0x1 uint8_t muNumDriveLinearDynamics
0xD 0x1 uint8_t muNumDriveAngularDynamics
0xE 0x1 uint8_t muNumBoxVolumes
0xF 0x1 uint8_t muNumCapsuleVolumes
0x10 0x1 uint8_t muNumSphereVolumes
0x11 0x1 uint8_t muNumCylinderVolumes
0x12 0x1 uint8_t muNumWheels
0x13 0x1 uint8_t muNumWheelBodies
0x14 0x18 BodySpec*[6] mapWheelBodies
0x2C 0x4 Padding
0x30 0x40 Matrix44Affine mCarModelSpaceToHandlingBodySpaceTransform
0x70 0x1 bool mbHasHandlingBody
0x71 0x3 Padding
0x74 0x4 BodySpec* mpHandlingBody
0x78 0x4 JointSpec* mpHandlingJoint
0x7C 0x4 BodyGroupSpec* mpBodyParts
0x80 0x4 BodySpec* mpBodies
0x84 0x4 BoxVolumeSpec* mpBoxVolumes
0x88 0x4 CapsuleVolumeSpec* mpCapsuleVolumes
0x8C 0x4 SphereVolumeSpec* mpSphereVolumes
0x90 0x4 CylinderVolumeSpec* mpCylinderVolumes
0x94 0x4 JointDynamicsSpec* mpJointDynamics
0x98 0x4 DriveLinearDynamicsSpec* mpDriveLinearDynamics
0x9C 0x4 DriveAngularDynamicsSpec* mpDriveAngularDynamics
0xA0 0x4 JointSpec* mpJoints
0xA4 0x4 Vector3* mpWheelPositions
0xA8 0x4 Vector3* mpWheelScales
0xAC 0xC TagList mGenericTags
0xB8 0xC TagList mCameraTags
0xC4 0xC TagList mLightTags

BrnPhysics::RWPhysicsTypeData::BodySpec

Offset Length Type Name Description Comments
0x0 0x1 uint8_t muIndex
0x1 0x3 Padding
0x4 0x4 float32_t mfMass
0x8 0x8 Padding
0x10 0x10 Vector3 mInertia
0x20 0x40 Matrix44Affine mTransform
0x60 0x4 VolumeSpec* mpVolume
0x64 0x4 BodyGroupSpec* mpBodyPart
0x68 0x8 Padding

BrnPhysics::RWPhysicsTypeData::VolumeSpec

Offset Length Type Name Description Comments
0x0 0x40 Matrix44Affine mTransform
0x40 0x1 uint8_t muType
0x41 0x1 uint8_t muIndex
0x42 0xE uint8_t[14] mauPad Padding

BrnPhysics::RWPhysicsTypeData::BodyGroupSpec

Offset Length Type Name Description Comments
0x0 0x1 uint8_t muIndex
0x1 0x1 uint8_t muNumberOfJointsToOtherBodyGroups
0x2 0x1 uint8_t muFirstBodyIndex
0x3 0x1 uint8_t muNumberOfBodies
0x4 0x1 uint8_t muBodyPartType
0x5 0x3 Padding
0x8 0x4 float32_t mfTotalMass
0xC 0x4 float32_t mfRadiusOfLargestBody

BrnPhysics::RWPhysicsTypeData::JointSpec

Offset Length Type Name Description Comments
0x0 0x1 uint8_t muIndex
0x1 0xF Padding
0x10 0x40 Matrix44Affine mTransform
0x50 0x4 BodySpec* mpParent
0x54 0x4 BodySpec* mpChild
0x58 0x4 JointDynamicsSpec* mpJointDynamicsSpec
0x5C 0x4 DriveLinearDynamicsSpec* mpDriveLinearDynamicsSpec
0x60 0x4 DriveAngularDynamicsSpec* mpDriveAngularDynamicsSpec
0x64 0x1 uint8_t mSpy
0x65 0xB Padding

BrnPhysics::RWPhysicsTypeData::JointDynamicsSpec

Offset Length Type Name Description Comments
0x0 0x1 uint8_t mJointType
0x1 0x1 uint8_t mTwistType
0x2 0x1 uint8_t mSwingType
0x3 0x1 Padding
0x4 0x4 float32_t mTwistAngle
0x8 0x4 float32_t mTwistOffset
0xC 0x4 float32_t mSwingAngle
0x10 0x4 float32_t mSwingOffset
0x14 0xC Padding
0x20 0x10 Vector3 mPositionLimit
0x30 0x10 Vector3 mLinearFrame
0x40 0x4 float32_t mLinearStressPlasticLimit
0x44 0x4 float32_t mAngularStressPlasticLimit
0x48 0x8 Padding

BrnPhysics::RWPhysicsTypeData::DriveLinearDynamicsSpec

Offset Length Type Name Description Comments
0x0 0x1 uint8_t mType
0x1 0x3 Padding
0x4 0x4 float32_t mLinearSpring
0x8 0x4 float32_t mLinearMaxDisplacement
0xC 0x4 float32_t mLinearDamping
0x10 0x4 float32_t mLinearMaxStrength
0x14 0x4 float32_t mLinearDistancePlasticLimit
0x18 0x8 Padding

BrnPhysics::RWPhysicsTypeData::DriveAngularDynamicsSpec

Offset Length Type Name Description Comments
0x0 0x1 uint8_t mType
0x1 0x3 Padding
0x4 0x4 float32_t mAngularSpring
0x8 0x4 float32_t mAngularMaxDisplacement
0xC 0x4 float32_t mAngularDamping
0x10 0x4 float32_t mAngularMaxStrength
0x14 0x4 float32_t mAngularDistancePlasticLimit
0x18 0x8 Padding

BrnPhysics::RWPhysicsTypeData::BoxVolumeSpec

Offset Length Type Name Description Comments
0x0 0x50 VolumeSpec Base class
0x50 0x10 Vector3 mHalfDimensions

BrnPhysics::RWPhysicsTypeData::CapsuleVolumeSpec

Offset Length Type Name Description Comments
0x0 0x50 VolumeSpec Base class
0x50 0x4 float32_t mRadius
0x54 0x4 float32_t mHalfHeight
0x58 0x8 Padding

BrnPhysics::RWPhysicsTypeData::SphereVolumeSpec

Offset Length Type Name Description Comments
0x0 0x50 VolumeSpec Base class
0x50 0x4 float32_t mRadius
0x54 0xC Padding

BrnPhysics::RWPhysicsTypeData::CylinderVolumeSpec

Offset Length Type Name Description Comments
0x0 0x50 VolumeSpec Padding
0x50 0x4 float32_t mRadius
0x54 0x4 float32_t mHalfHeight
0x58 0x8 Padding

BrnPhysics::Deformation::ModelData::TagList

Offset Length Type Name Description Comments
0x0 0x4 uint32_t muNumTagPoints
0x4 0x4 char* mpaTagTypes See
0x8 0x4 Matrix44Affine* mpaTagPoints

Enumerations

BrnPhysics::Deformation::ETagPointType

Name Value Comments
E_TAGPOINT_PHYSICS_CENTREOFMASS 0
E_TAGPOINT_LIGHTS_FRONTRUNNINGLEFT 1
E_TAGPOINT_LIGHTS_FRONTRUNNINGRIGHT 2
E_TAGPOINT_LIGHTS_REARRUNNINGLEFT 3
E_TAGPOINT_LIGHTS_REARRUNNINGRIGHT 4
E_TAGPOINT_LIGHTS_FRONTSPOTLEFT 5
E_TAGPOINT_LIGHTS_FRONTSPOTRIGHT 6
E_TAGPOINT_LIGHTS_INDICATORFRONTLEFT 7
E_TAGPOINT_LIGHTS_INDICATORFRONTRIGHT 8
E_TAGPOINT_LIGHTS_INDICATORREARLEFT 9
E_TAGPOINT_LIGHTS_INDICATORREARRIGHT 10
E_TAGPOINT_LIGHTS_BRAKELEFT 11
E_TAGPOINT_LIGHTS_BRAKERIGHT 12
E_TAGPOINT_LIGHTS_BRAKECENTRE 13
E_TAGPOINT_LIGHTS_REVERSELEFT 14
E_TAGPOINT_LIGHTS_REVERSERIGHT 15
E_TAGPOINT_LIGHTS_SPOTLIGHT1 16
E_TAGPOINT_LIGHTS_SPOTLIGHT2 17
E_TAGPOINT_LIGHTS_BLUESTWOS1 18
E_TAGPOINT_LIGHTS_BLUESTWOS2 19
E_TAGPOINT_TYREWELL_FRONTLEFT 20
E_TAGPOINT_TYREWELL_FRONTRIGHT 21
E_TAGPOINT_TYREWELL_REARLEFT 22
E_TAGPOINT_TYREWELL_REARRIGHT 23
E_TAGPOINT_TYREWELL_ADDITIONALLEFT 24
E_TAGPOINT_TYREWELL_ADDITIONALRIGHT 25
E_TAGPOINT_AXLEPOINT_FRONT 26
E_TAGPOINT_AXLEPOINT_REAR 27
E_TAGPOINT_ARTICULATIONPOINT_FRONT 28
E_TAGPOINT_ARTICULATIONPOINT_REAR 29
E_TAGPOINT_ATTACHPOINT 30
E_TAGPOINT_FXGLASSSMASHPOINT1 31
E_TAGPOINT_FXGLASSSMASHPOINT2 32
E_TAGPOINT_FXGLASSSMASHPOINT3 33
E_TAGPOINT_FXGLASSSMASHPOINT4 34
E_TAGPOINT_FXGLASSSMASHPOINT5 35
E_TAGPOINT_FXGLASSSMASHPOINT6 36
E_TAGPOINT_FXGLASSSMASHPOINT7 37
E_TAGPOINT_FXGLASSSMASHPOINT8 38
E_TAGPOINT_FXGLASSSMASHPOINT9 39
E_TAGPOINT_FXGLASSSMASHPOINT10 40
E_TAGPOINT_FXBOOSTPOINT1 41
E_TAGPOINT_FXBOOSTPOINT2 42
E_TAGPOINT_FXBOOSTPOINT3 43
E_TAGPOINT_FXBOOSTPOINT4 44
E_TAGPOINT_FXFIREPOINT 45
E_TAGPOINT_FXSTEAMPOINT 46
E_TAGPOINT_FXPOV_FRONTLEFT 47
E_TAGPOINT_FXPOV_FRONTRIGHT 48
E_TAGPOINT_FXPOV_REARLEFT 49
E_TAGPOINT_FXPOV_REARRIGHT 50
E_TAGPOINT_FXDASHBOARD 51
E_TAGPOINT_FXENGINE 52
E_TAGPOINT_FXTRUNK 53
E_TAGPOINT_FXPETROL_TANK 54
E_TAGPOINT_FXPELVIS_FRONTLEFT 55
E_TAGPOINT_PAYLOAD 56
E_TAGPOINT_COUNT 57