I love the smell of UnrealEd crashing in the morning. – tarquin
UE3:RB_BodyInstance (UDK)
Object >> RB_BodyInstance |
Contents
- 1 Properties
- 1.1 Property group 'BoneSpring'
- 1.1.1 bDisableOnOverextension
- 1.1.2 bEnableBoneSpringAngular
- 1.1.3 bEnableBoneSpringLinear
- 1.1.4 bMakeSpringToBaseCollisionComponent
- 1.1.5 bNotifyOwnerOnOverextension
- 1.1.6 BoneAngularDamping
- 1.1.7 BoneAngularSpring
- 1.1.8 BoneLinearDamping
- 1.1.9 BoneLinearSpring
- 1.1.10 bTeleportOnOverextension
- 1.1.11 bUseKinActorForBoneSpring
- 1.1.12 OverextensionThreshold
- 1.2 Property group 'Physics'
- 1.3 Property group 'RB_BodyInstance'
- 1.4 Internal variables
- 1.1 Property group 'BoneSpring'
- 2 Native functions
- 2.1 EnableBoneSpring
- 2.2 EnableCollisionResponse
- 2.3 GetBodyMass
- 2.4 GetPhysicsAssetInstance
- 2.5 GetUnrealWorldAngularVelocity
- 2.6 GetUnrealWorldTM
- 2.7 GetUnrealWorldVelocity
- 2.8 GetUnrealWorldVelocityAtPoint
- 2.9 IsFixed
- 2.10 IsValidBodyInstance
- 2.11 SetBlockRigidBody
- 2.12 SetBoneSpringParams
- 2.13 SetBoneSpringTarget
- 2.14 SetContactReportForceThreshold
- 2.15 SetFixed
- 2.16 SetPhysMaterialOverride
- 2.17 UpdateDampingProperties
- 2.18 UpdateMassProperties
This is an auto-generated page and may need human attention. Please remove the {{autogenerated}} tag if the page seems reasonably complete or replace it with the {{expand}} tag if the page is not yet complete. |
Properties
Property group 'BoneSpring'
bDisableOnOverextension
Type: bool
If true, bone spring will automatically disable if it ever gets longer than the OverextensionThreshold.
bEnableBoneSpringAngular
Type: bool
Enable angular 'spring' between the physics body for this bone, and the world-space location of the animation bone.
bEnableBoneSpringLinear
Type: bool
Enable linear 'spring' between the physics body for this bone, and the world-space location of the animation bone.
bMakeSpringToBaseCollisionComponent
Type: bool
When using bone springs, connect them to the physics body of the Base's CollisionComponent. When using this option, SetBoneSpringTarget must be given a matrix for this bone relative to the other bone, rather than relative to the world.
bNotifyOwnerOnOverextension
Type: bool
Send notification to Owning Actor when overextended, by calling Actor::OnRigidBody
BoneAngularDamping
Type: float
Modifiers: const
Damping on angular spring to animated bone.
Default value: 0.1
BoneAngularSpring
Type: float
Modifiers: const
Strength of angular spring to animated bone.
Default value: 1.0
BoneLinearDamping
Type: float
Modifiers: const
Damping on linear spring to animated bone.
Default value: 0.1
BoneLinearSpring
Type: float
Modifiers: const
Strength of linear spring to animated bone.
Default value: 10.0
bTeleportOnOverextension
Type: bool
This will teleport the whole PhysicsAssetInstance if this spring gets too long, to reduce to error to zero. Note - having this set on more than one body in a PhysicsAssetInstance will have unpredictable results.
bUseKinActorForBoneSpring
Type: bool
When using bone springs, connect them to a kinematic body and animate that, rather than animating the attachment location on the 'world'. This adds some overhead, but tracks rapidly moving targets better.
OverextensionThreshold
Type: float
If bDisableOnOverextension is on, the bone spring will be disabled if it stretches more than this amount.
Property group 'Physics'
bEnableCollisionResponse
Type: bool
Modifiers: const
Enables physics response for this body (on by default). If FALSE, contacts are still generated and reported. Useful for "sensor" bodies.
Default value: True
bOnlyCollideWithPawns
Type: bool
Modifiers: const
This body should only collide with other bodies with their components marked bConsiderPawnForRBCollision. Useful for flappy bits you do not want to collide with the world.
bPushBody
Type: bool
Modifiers: const
Denotes body as a "push" body. Also disables collision response, by definition.
ContactReportForceThreshold
Type: float
Used for force-based collision filtering. Note: this is NOT an additional filter on top of normal pairwise filtering. It is essentially a new kind of reporting. It can be used in conjuction with pairwise reporting, however. To disable this feature, set the threshold to a negative number.
Default value: -1.0
InstanceDampingScale
Type: float
Per-instance scaling of linear/angular damping
Default value: 1.0
InstanceMassScale
Type: float
Per-instance scaling of mass
Default value: 1.0
PhysMaterialOverride
Type: PhysicalMaterial
Modifiers: const
Allows you to override the PhysicalMaterial to use for this body. Due to the way the BodyInstance pooling works, this MUST BE LAST PROPERTY OF THE CLASS.
Property group 'RB_BodyInstance'
CustomGravityFactor
Type: float
The force applied to the body to address custom gravity for the actor is multiplied CustomGravityFactor, allowing bodies to individually control how custom gravity settings affectthem
Default value: 1.0
Internal variables
bForceUnfixed
Type: bool
Modifiers: private, transient
An override to say whether this body has been forced (by gameplay code) to be unfixed or not. This allows for the existing functionality and not having to change all of the existing code for setting fixed/unfixed on body instances. Useful for chopping off limbs and having Pawn go to ragdoll and back and still be able to play animations.
bInstanceAlwaysFullAnimWeight
Type: bool
Modifiers: private, transient
If this is true that all of the "updatetransform" data should come from the physics and not the anim data. NOTE: If an animation is played on the bones and there is no actual BodyInstance (e.g. ragdolls usually have finger and those indiv finger bones do not have a body instance on them) then the animation will still play as there is no body instance which is being checked for this override.
BodyData
Type: pointer
Modifiers: native, const
Internal use. Physics-engine representation of this body.
BodyIndex
Type: int
Modifiers: const
Index of this BodyInstance within the PhysicsAssetInstance/PhysicsAsset.
BoneSpring
Type: pointer
Modifiers: native, const
Internal use. Physics-engine representation of the spring on this body.
BoneSpringKinActor
Type: pointer
Modifiers: native, const
If bUseKinActorForBoneSpring is true, this is the Physics-engine representation of the kinematic actor the spring is attached to.
LastEffectPlayedTime
Type: float
Modifiers: transient
For per-bodyinstance effects this keeps track of the last time one played. Could be used for items like gib effects.
OwnerComponent
Type: PrimitiveComponent
Modifiers: const, transient
PrimitiveComponent containing this body. Due to the way the BodyInstance pooling works, this MUST BE FIRST PROPERTY OF THE CLASS.
PreviousVelocity
Type: Object.Vector
Previous frame Velocity of this BodyInstance. Only updated if this is the root body of the CollisionComponent of an Actor in PHYS_RigidBody used for collision events since by the time the event is sent, Velocity would have been updated with the post-collision velocity
SceneIndex
Type: int
Modifiers: native, const
Physics scene index.
Velocity
Type: Object.Vector
Current linear velocity of this BodyInstance. Only updated if this is the root body of the CollisionComponent of an Actor in PHYS_RigidBody
Native functions
EnableBoneSpring
Used to turn the angular/linear bone spring on and off. InBoneTarget is in world space, unless bMakeSpringToBaseCollisionComponent is TRUE, in which case it is relative to that body.
EnableCollisionResponse
Enable/disable response to contacts.
GetBodyMass
Returns the body's mass
GetPhysicsAssetInstance
Returns the PhysicsAssetInstance that owns this RB_BodyInstance (if there is one)
GetUnrealWorldAngularVelocity
Get current angular velocity in world space from physics body.
GetUnrealWorldTM
Get current transform in world space from physics body.
GetUnrealWorldVelocity
Get current velocity in world space from physics body.
GetUnrealWorldVelocityAtPoint
Get current velocity of a point on this physics body, in world space. Point is specified in world space.
IsFixed
Returns TRUE if this body is fixed
IsValidBodyInstance
See if this body is valid.
SetBlockRigidBody
Used to disable rigid body collisions for this body. Overrides the bNoCollision flag in the BodySetup for this body.
SetBoneSpringParams
Used to set the spring stiffness and damping parameters for the bone spring.
SetBoneSpringTarget
Used to set desired target location of this spring. Usually called by UpdateRBBonesFromSpaceBases. InBoneTarget is in world space, unless bMakeSpringToBaseCollisionComponent is TRUE, in which case it is relative to that body.
SetContactReportForceThreshold
Set a new contact report force threhold. Threshold < 0 disables this feature.
SetFixed
Force this body to be fixed (kinematic) or not. Overrides the BodySetup for this body.
SetPhysMaterialOverride
Set physical material override for this body
UpdateDampingProperties
Update instance's linear and angular damping
UpdateMassProperties
Update instance's mass properties (mass, inertia and center-of-mass offset) based on MassScale, InstanceMassScale and COMNudge.