|
| | LLM_DEFINE_TAG (Animation_RigidBody) |
| |
| | DEFINE_STAT (STAT_RigidBodyNodeInitTime) |
| |
| | DEFINE_STAT (STAT_RigidBodyNodeInitTime_SetupSimulation) |
| |
| | CSV_DECLARE_CATEGORY_MODULE_EXTERN (ENGINE_API, Animation) |
| |
| | DECLARE_LOG_CATEGORY_EXTERN (LogRBAN, Log, All) |
| |
| | DEFINE_LOG_CATEGORY (LogRBAN) |
| |
| | DECLARE_CYCLE_STAT (TEXT("RigidBody_Eval"), STAT_RigidBody_Eval, STATGROUP_Anim) |
| |
| | DECLARE_CYCLE_STAT (TEXT("RigidBodyNode_Simulation"), STAT_RigidBodyNode_Simulation, STATGROUP_Anim) |
| |
| | DECLARE_CYCLE_STAT (TEXT("RigidBodyNode_SimulationWait"), STAT_RigidBodyNode_SimulationWait, STATGROUP_Anim) |
| |
| | DECLARE_CYCLE_STAT (TEXT("FAnimNode_RigidBody::EvaluateSkeletalControl_AnyThread"), STAT_ImmediateEvaluateSkeletalControl, STATGROUP_ImmediatePhysics) |
| |
| void | ComputeBodyInsertionOrder (TArray< FBoneIndexType > &InsertionOrder, const USkeletalMeshComponent &SKC) |
| |
| | DECLARE_CYCLE_STAT (TEXT("FAnimNode_RigidBody::UpdateWorldGeometry"), STAT_ImmediateUpdateWorldGeometry, STATGROUP_ImmediatePhysics) |
| |
| | DECLARE_CYCLE_STAT (TEXT("FAnimNode_RigidBody::UpdateWorldForces"), STAT_ImmediateUpdateWorldForces, STATGROUP_ImmediatePhysics) |
| |
| | DECLARE_CYCLE_STAT (TEXT("RigidBody_PreUpdate"), STAT_RigidBody_PreUpdate, STATGROUP_Anim) |
| |
| | DECLARE_CYCLE_STAT (TEXT("RigidBody_Update"), STAT_RigidBody_Update, STATGROUP_Anim) |
| |
|
| bool | bEnableRigidBodyNode = true |
| |
| FAutoConsoleVariableRef | CVarEnableRigidBodyNode (TEXT("p.RigidBodyNode"), bEnableRigidBodyNode, TEXT("Enables/disables the whole rigid body node system. When disabled, avoids all allocations and runtime costs. Can be used to disable RB Nodes on low-end platforms."), ECVF_Scalability) |
| |
| TAutoConsoleVariable< int32 > | CVarEnableRigidBodyNodeSimulation (TEXT("p.RigidBodyNode.EnableSimulation"), 1, TEXT("Runtime Enable/Disable RB Node Simulation for debugging and testing (node is initialized and bodies and constraints are created, even when disabled.)"), ECVF_Default) |
| |
| TAutoConsoleVariable< int32 > | CVarRigidBodyLODThreshold (TEXT("p.RigidBodyLODThreshold"), -1, TEXT("Max LOD that rigid body node is allowed to run on. Provides a global threshold that overrides per-node the LODThreshold property. -1 means no override."), ECVF_Scalability) |
| |
| int32 | RBAN_MaxSubSteps = 4 |
| |
| bool | bRBAN_EnableTimeBasedReset = true |
| |
| bool | bRBAN_EnableComponentAcceleration = true |
| |
| int32 | RBAN_WorldObjectExpiry = 4 |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeMaxSteps (TEXT("p.RigidBodyNode.MaxSubSteps"), RBAN_MaxSubSteps, TEXT("Set the maximum number of simulation steps in the update loop"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeEnableTimeBasedReset (TEXT("p.RigidBodyNode.EnableTimeBasedReset"), bRBAN_EnableTimeBasedReset, TEXT("If true, Rigid Body nodes are reset when they have not been updated for a while (default true)"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeEnableComponentAcceleration (TEXT("p.RigidBodyNode.EnableComponentAcceleration"), bRBAN_EnableComponentAcceleration, TEXT("Enable/Disable the simple acceleration transfer system for component- or bone-space simulation"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeWorldObjectExpiry (TEXT("p.RigidBodyNode.WorldObjectExpiry"), RBAN_WorldObjectExpiry, TEXT("World objects are removed from the simulation if not detected after this many tests"), ECVF_Default) |
| |
| bool | bRBAN_IncludeClothColliders = true |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeIncludeClothColliders (TEXT("p.RigidBodyNode.IncludeClothColliders"), bRBAN_IncludeClothColliders, TEXT("Include cloth colliders as kinematic bodies in the immediate physics simulation."), ECVF_Default) |
| |
| bool | bRBAN_SimSpace_EnableOverride = false |
| |
| float | RBAN_SimSpaceOverride_WorldAlpha = -1.0f |
| |
| float | RBAN_SimSpaceOverride_VelocityScaleZ = -1.0f |
| |
| float | RBAN_SimSpaceOverride_DampingAlpha = -1.0f |
| |
| float | RBAN_SimSpaceOverride_MaxLinearVelocity = -1.0f |
| |
| float | RBAN_SimSpaceOverride_MaxAngularVelocity = -1.0f |
| |
| float | RBAN_SimSpaceOverride_MaxLinearAcceleration = -1.0f |
| |
| float | RBAN_SimSpaceOverride_MaxAngularAcceleration = -1.0f |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSpaceOverride (TEXT("p.RigidBodyNode.Space.Override"), bRBAN_SimSpace_EnableOverride, TEXT("Force-enable the advanced simulation space movement forces"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSpaceWorldAlpha (TEXT("p.RigidBodyNode.Space.WorldAlpha"), RBAN_SimSpaceOverride_WorldAlpha, TEXT("RBAN SimSpaceSettings overrides"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSpaceVelScaleZ (TEXT("p.RigidBodyNode.Space.VelocityScaleZ"), RBAN_SimSpaceOverride_VelocityScaleZ, TEXT("RBAN SimSpaceSettings overrides"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSpaceDampingAlpha (TEXT("p.RigidBodyNode.Space.DampingAlpha"), RBAN_SimSpaceOverride_DampingAlpha, TEXT("RBAN SimSpaceSettings overrides"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSpaceMaxCompLinVel (TEXT("p.RigidBodyNode.Space.MaxLinearVelocity"), RBAN_SimSpaceOverride_MaxLinearVelocity, TEXT("RBAN SimSpaceSettings overrides"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSpaceMaxCompAngVel (TEXT("p.RigidBodyNode.Space.MaxAngularVelocity"), RBAN_SimSpaceOverride_MaxAngularVelocity, TEXT("RBAN SimSpaceSettings overrides"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSpaceMaxCompLinAcc (TEXT("p.RigidBodyNode.Space.MaxLinearAcceleration"), RBAN_SimSpaceOverride_MaxLinearAcceleration, TEXT("RBAN SimSpaceSettings overrides"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSpaceMaxCompAngAcc (TEXT("p.RigidBodyNode.Space.MaxAngularAcceleration"), RBAN_SimSpaceOverride_MaxAngularAcceleration, TEXT("RBAN SimSpaceSettings overrides"), ECVF_Default) |
| |
| float | RBAN_Override_ComponentLinearAccScale = -1.0f |
| |
| float | RBAN_Override_ComponentLinearVelScale = -1.0f |
| |
| float | RBAN_Override_ComponentAppliedLinearAccClamp = -1.0f |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeOverrideComponentLinearAccScale (TEXT("p.RigidBodyNode.ComponentLinearAccScale"), RBAN_Override_ComponentLinearAccScale, TEXT("ComponentLinearAccScale override"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeOverrideComponentLinearVelScale (TEXT("p.RigidBodyNode.ComponentLinearVelcale"), RBAN_Override_ComponentLinearVelScale, TEXT("ComponentLinearVelcale override"), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeOverrideComponentAppliedLinearAccClamp (TEXT("p.RigidBodyNode.ComponentAppliedLinearAccClamp"), RBAN_Override_ComponentAppliedLinearAccClamp, TEXT("ComponentAppliedLinearAccClamp override"), ECVF_Default) |
| |
| float | RBAN_GravityScale = 1.0f |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeGravityScale (TEXT("p.RigidBodyNode.GravityScale"), RBAN_GravityScale, TEXT("Multiplies the gravity on all RBANs"), ECVF_Default) |
| |
| bool | bRBAN_DeferredSimulationDefault = false |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeDeferredSimulationDefault (TEXT("p.RigidBodyNode.DeferredSimulationDefault"), bRBAN_DeferredSimulationDefault, TEXT("Whether rigid body simulations are deferred one frame for assets that don't opt into a specific simulation timing"), ECVF_Default) |
| |
| bool | bRBAN_DeferredSimulationForceDefault = false |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeDeferredSimulationForceDefault (TEXT("p.RigidBodyNode.DeferredSimulationForceDefault"), bRBAN_DeferredSimulationForceDefault, TEXT("When true, rigid body simulation will always use the value of p.RigidBodyNode.DeferredSimulationDefault to determine whether to defer the simulation work, ignoring the setting in the individual node."), ECVF_Default) |
| |
| bool | bRBAN_DebugDraw = false |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeDebugDraw (TEXT("p.RigidBodyNode.DebugDraw"), bRBAN_DebugDraw, TEXT("Whether to debug draw the rigid body simulation state. Requires p.Chaos.DebugDraw.Enabled 1 to function as well."), ECVF_Default) |
| |
| bool | bRBAN_InitializeBoneReferencesRangeCheckEnabled = true |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeInitializeBoneReferencesRangeCheckEnabled (TEXT("p.RigidBodyNode.InitializeBoneReferencesRangeCheckEnabled"), bRBAN_InitializeBoneReferencesRangeCheckEnabled, TEXT(""), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarRigidBodyNodeSimulationTaskPriority (TEXT("p.RigidBodyNode.TaskPriority.Simulation"), GRigidBodyNodeSimulationTaskPriority, TEXT("Task priority for running the rigid body node simulation task (0 = foreground/high, 1 = foreground/normal, 2 = background/high, 3 = background/normal, 4 = background/low)."), ECVF_Default) |
| |