Navigation
API > API/Runtime > API/Runtime/Engine > API/Runtime/Engine/Animation
References
Module | Engine |
Header | /Engine/Source/Runtime/Engine/Public/Animation/AnimPhysicsSolver.h |
Include | #include "Animation/AnimPhysicsSolver.h" |
Syntax
class FAnimPhys
Remarks
Lightweight rigid body motion solver (no collision) used for cosmetic secondary motion in an animation graph without invoking something heavier like using PhysX to simulate constraints which could be cost prohibitive
Functions
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | ApplyImpulse
(
FAnimPhysRigidBody* InOutRigidBody, |
Apply an impulse to a body |
![]() ![]() |
FVector | CalculateCenterOfMass
(
const TArray< FVector >& InVertices, |
Calculates the center of mass of a shape |
![]() ![]() |
FVector | CalculateCenterOfMass
(
const TArray< FAnimPhysShape >& InShapes |
Calculates the centre of mass of a collection of shapes |
![]() ![]() |
FMatrix | CalculateInertia
(
const TArray< FVector >& InVertices, |
Calculate the inertia tensor of a shape |
![]() ![]() |
FMatrix | CalculateInertia
(
const TArray< FAnimPhysShape >& InShapes, |
Calculate the inertia tensor of a collection of shapes |
![]() ![]() |
float | CalculateVolume
(
const TArray< FAnimPhysShape >& InShapes |
Calculates the volume of a collection of shapes |
![]() ![]() |
float | CalculateVolume
(
const TArray< FVector >& InVertices, |
Calculates the volume of a shape |
![]() ![]() |
void | ConstrainAlongDirection
(
float DeltaTime, |
Constrain bodies along a provided axis |
![]() ![]() |
void | ConstrainAngularRange
(
float DeltaTime, |
Constraint two bodies together with angular limits, limiting the relative rotation between them. |
![]() ![]() |
void | ConstrainConeAngle
(
float DeltaTime, |
Constraints the rotation between two bodies into a cone |
![]() ![]() |
void | ConstrainPlanar
(
float DeltaTime, |
Constrains the position of a body to one side of a plane placed at PlaneTransform (plane normal is Z axis) |
![]() ![]() |
void | ConstrainPositionNailed
(
float DeltaTime, |
Constrain bodies together as if fixed or nailed (linear only, bodies can still rotate) |
![]() ![]() |
void | ConstrainPositionPrismatic
(
float DeltaTime, |
Constrain bodies together with linear limits forming a box or prism around the constraint |
![]() ![]() |
void | ConstrainSphericalInner
(
float DeltaTime, |
Constrains the position of a body within the requested sphere |
![]() ![]() |
void | ConstrainSphericalOuter
(
float DeltaTime, |
Constrains the position of a body outside of the requested sphere |
![]() ![]() |
void | CreateSpring
(
TArray< FAnimPhysSpring >& SpringContainer, |
Spring creation methods. |
![]() ![]() |
void | PhysicsUpdate
(
float DeltaTime, |
Performs a physics update on the provided state objects |
![]() ![]() |
void | ScaleRigidBodyMass
(
FAnimPhysRigidBody* InOutRigidBody, |
Scale the mass and inertia properties of a rigid body |
Constants
Name | Description |
---|---|
bEnableDetailedStats | Runtime cvar toggle for detailed/verbose profiling. |