UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
PBDRigidsEvolution.cpp File Reference

Classes

struct  Chaos::FDefaultCollectionFactory
 

Namespaces

namespace  Chaos
 
namespace  Chaos::CVars
 

Functions

 CSV_DECLARE_CATEGORY_EXTERN (ChaosPhysicsTimers)
 
FAutoConsoleVariableRef Chaos::CVarBroadphaseIsTree (TEXT("p.BroadphaseType"), BroadPhaseConfig.BroadphaseType, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarBoundingVolumeNumCells (TEXT("p.BoundingVolumeNumCells"), BroadPhaseConfig.BVNumCells, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarMaxChildrenInLeaf (TEXT("p.MaxChildrenInLeaf"), BroadPhaseConfig.MaxChildrenInLeaf, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarMaxTreeDepth (TEXT("p.MaxTreeDepth"), BroadPhaseConfig.MaxTreeDepth, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarAABBMaxChildrenInLeaf (TEXT("p.AABBMaxChildrenInLeaf"), BroadPhaseConfig.AABBMaxChildrenInLeaf, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarAABBMaxTreeDepth (TEXT("p.AABBMaxTreeDepth"), BroadPhaseConfig.AABBMaxTreeDepth, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarMaxPayloadSize (TEXT("p.MaxPayloadSize"), BroadPhaseConfig.MaxPayloadSize, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarIterationsPerTimeSlice (TEXT("p.IterationsPerTimeSlice"), BroadPhaseConfig.IterationsPerTimeSlice, TEXT(""))
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("CacheAccelerationBounds"), STAT_CacheAccelerationBounds, STATGROUP_Chaos)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("ComputeIntermediateSpatialAcceleration"), STAT_ComputeIntermediateSpatialAcceleration, STATGROUP_Chaos)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("CopyAccelerationStructure"), STAT_CopyAccelerationStructure, STATGROUP_Chaos)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("SwapAccelerationStructures"), STAT_SwapAccelerationStructures, STATGROUP_Chaos)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("AccelerationStructureTimeSlice"), STAT_AccelerationStructureTimeSlice, STATGROUP_Chaos)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("AccelerationStructureTimeSliceCopy"), STAT_AccelerationStructureTimeSliceCopy, STATGROUP_Chaos)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("CreateInitialAccelerationStructure"), STAT_CreateInitialAccelerationStructure, STATGROUP_Chaos)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("CreateNonSlicedStructures"), STAT_CreateNonSlicedStructures, STATGROUP_Chaos)
 
TUniquePtr< ISpatialAccelerationCollection< FAccelerationStructureHandle, FReal, 3 > > Chaos::CreateNewSpatialStructureFromSubStructure (TUniquePtr< ISpatialAcceleration< FAccelerationStructureHandle, FReal, 3 > > &&Substructure)
 

Variables

int32 ChaosRigidsEvolutionApplyAllowEarlyOutCVar = 1
 
FAutoConsoleVariableRef CVarChaosRigidsEvolutionApplyAllowEarlyOut (TEXT("p.ChaosRigidsEvolutionApplyAllowEarlyOut"), ChaosRigidsEvolutionApplyAllowEarlyOutCVar, TEXT("Allow Chaos Rigids Evolution apply iterations to early out when resolved.[def:1]"))
 
int32 ChaosRigidsEvolutionApplyPushoutAllowEarlyOutCVar = 1
 
FAutoConsoleVariableRef CVarChaosRigidsEvolutionApplyPushoutAllowEarlyOut (TEXT("p.ChaosRigidsEvolutionApplyPushoutAllowEarlyOut"), ChaosRigidsEvolutionApplyPushoutAllowEarlyOutCVar, TEXT("Allow Chaos Rigids Evolution apply-pushout iterations to early out when resolved.[def:1]"))
 
int32 ChaosNumPushOutIterationsOverride = -1
 
FAutoConsoleVariableRef CVarChaosNumPushOutIterationsOverride (TEXT("p.ChaosNumPushOutIterationsOverride"), ChaosNumPushOutIterationsOverride, TEXT("Override for num push out iterations if >= 0 [def:-1]"))
 
int32 ChaosNumContactIterationsOverride = -1
 
FAutoConsoleVariableRef CVarChaosNumContactIterationsOverride (TEXT("p.ChaosNumContactIterationsOverride"), ChaosNumContactIterationsOverride, TEXT("Override for num contact iterations if >= 0. [def:-1]"))
 
bool Chaos::CVars::bChaos_Solver_TestMode_Enabled = false
 
int32 Chaos::CVars::Chaos_Solver_TestMode_Step = 0
 
CHAOS_API int32 Chaos::FixBadAccelerationStructureRemoval = 1
 
FAutoConsoleVariableRef Chaos::CVarFixBadAccelerationStructureRemoval (TEXT("p.FixBadAccelerationStructureRemoval"), FixBadAccelerationStructureRemoval, TEXT(""))
 
CHAOS_API int32 Chaos::AccelerationStructureIsolateQueryOnlyObjects = 0
 
FAutoConsoleVariableRef Chaos::CVarAccelerationStructureIsolateQueryOnlyObjects (TEXT("p.Chaos.AccelerationStructureIsolateQueryOnlyObjects"), AccelerationStructureIsolateQueryOnlyObjects, TEXT("Set to 1: QueryOnly Objects will not be moved to acceleration structures on the Physics Thread"))
 
CHAOS_API int32 Chaos::AccelerationStructureSplitStaticAndDynamic = 1
 
FAutoConsoleVariableRef Chaos::CVarAccelerationStructureSplitStaticAndDynamic (TEXT("p.Chaos.AccelerationStructureSplitStaticDynamic"), AccelerationStructureSplitStaticAndDynamic, TEXT("Set to 1: Sort Dynamic and Static bodies into seperate acceleration structures, any other value will disable the feature"))
 
CHAOS_API int32 Chaos::AccelerationStructureUseDynamicTree = 1
 
FAutoConsoleVariableRef Chaos::CVarAccelerationStructureUseDynamicTree (TEXT("p.Chaos.AccelerationStructureUseDynamicTree"), AccelerationStructureUseDynamicTree, TEXT("Use a dynamic BVH tree structure for dynamic objects"))
 
CHAOS_API int32 Chaos::AccelerationStructureUseDirtyTreeInsteadOfGrid = 1
 
FAutoConsoleVariableRef Chaos::CVarAccelerationStructureUseDirtyTreeInsteadOfGrid (TEXT("p.Chaos.AccelerationStructureUseDirtyTreeInsteadOfGrid"), AccelerationStructureUseDirtyTreeInsteadOfGrid, TEXT("Use a dynamic tree structure for dirty elements instead of a 2D grid"))
 
CHAOS_API int32 Chaos::GAccelerationStructureCacheOverlappingLeaves = 1
 
FAutoConsoleVariableRef Chaos::CVarAccelerationStructureCacheOverlappingLeaves (TEXT("p.Chaos.AccelerationStructureCacheOverlappingLeaves"), GAccelerationStructureCacheOverlappingLeaves, TEXT("Set to 1: Cache the overlapping leaves for faster overlap query, any other value will disable the feature"))
 
CHAOS_API int32 Chaos::AccelerationStructureTimeSlicingMaxQueueSizeBeforeForce = 1000
 
FAutoConsoleVariableRef Chaos::CVarAccelerationStructureTimeSlicingMaxQueueSizeBeforeForce (TEXT("p.Chaos.AccelerationStructureTimeSlicingMaxQueueSizeBeforeForce"), AccelerationStructureTimeSlicingMaxQueueSizeBeforeForce, TEXT("If the update queue reaches this limit, time slicing will be disabled, and the acceleration structure will be built at once"))
 
CHAOS_API int32 Chaos::AccelerationStructureTimeSlicingMaxBytesCopy = 100000
 
FAutoConsoleVariableRef Chaos::CVarAccelerationStructureTimeSlicingMaxBytesCopy (TEXT("p.Chaos.AccelerationStructureTimeSlicingMaxBytesCopy"), AccelerationStructureTimeSlicingMaxBytesCopy, TEXT("The Maximum number of bytes to copy to the external acceleration structure during Copy Time Slicing"))
 
CHAOS_API FBroadPhaseConfig Chaos::BroadPhaseConfig
 

Function Documentation

◆ CSV_DECLARE_CATEGORY_EXTERN()

CSV_DECLARE_CATEGORY_EXTERN ( ChaosPhysicsTimers  )

Variable Documentation

◆ ChaosNumContactIterationsOverride

int32 ChaosNumContactIterationsOverride = -1

◆ ChaosNumPushOutIterationsOverride

int32 ChaosNumPushOutIterationsOverride = -1

◆ ChaosRigidsEvolutionApplyAllowEarlyOutCVar

int32 ChaosRigidsEvolutionApplyAllowEarlyOutCVar = 1

◆ ChaosRigidsEvolutionApplyPushoutAllowEarlyOutCVar

int32 ChaosRigidsEvolutionApplyPushoutAllowEarlyOutCVar = 1

◆ CVarChaosNumContactIterationsOverride

FAutoConsoleVariableRef CVarChaosNumContactIterationsOverride(TEXT("p.ChaosNumContactIterationsOverride"), ChaosNumContactIterationsOverride, TEXT("Override for num contact iterations if >= 0. [def:-1]")) ( TEXT("p.ChaosNumContactIterationsOverride")  ,
ChaosNumContactIterationsOverride  ,
TEXT("Override for num contact iterations if >= 0. [def:-1]")   
)

◆ CVarChaosNumPushOutIterationsOverride

FAutoConsoleVariableRef CVarChaosNumPushOutIterationsOverride(TEXT("p.ChaosNumPushOutIterationsOverride"), ChaosNumPushOutIterationsOverride, TEXT("Override for num push out iterations if >= 0 [def:-1]")) ( TEXT("p.ChaosNumPushOutIterationsOverride")  ,
ChaosNumPushOutIterationsOverride  ,
TEXT("Override for num push out iterations if >= 0 [def:-1]")   
)

◆ CVarChaosRigidsEvolutionApplyAllowEarlyOut

FAutoConsoleVariableRef CVarChaosRigidsEvolutionApplyAllowEarlyOut(TEXT("p.ChaosRigidsEvolutionApplyAllowEarlyOut"), ChaosRigidsEvolutionApplyAllowEarlyOutCVar, TEXT("Allow Chaos Rigids Evolution apply iterations to early out when resolved.[def:1]")) ( TEXT("p.ChaosRigidsEvolutionApplyAllowEarlyOut")  ,
ChaosRigidsEvolutionApplyAllowEarlyOutCVar  ,
TEXT("Allow Chaos Rigids Evolution apply iterations to early out when resolved.[def:1]")   
)

◆ CVarChaosRigidsEvolutionApplyPushoutAllowEarlyOut

FAutoConsoleVariableRef CVarChaosRigidsEvolutionApplyPushoutAllowEarlyOut(TEXT("p.ChaosRigidsEvolutionApplyPushoutAllowEarlyOut"), ChaosRigidsEvolutionApplyPushoutAllowEarlyOutCVar, TEXT("Allow Chaos Rigids Evolution apply-pushout iterations to early out when resolved.[def:1]")) ( TEXT("p.ChaosRigidsEvolutionApplyPushoutAllowEarlyOut")  ,
ChaosRigidsEvolutionApplyPushoutAllowEarlyOutCVar  ,
TEXT("Allow Chaos Rigids Evolution apply-pushout iterations to early out when resolved.[def:1]")   
)