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

Namespaces

namespace  Chaos
 
namespace  Chaos::CVars
 

Functions

 Chaos::DECLARE_CYCLE_STAT (TEXT("Collisions::Reset"), STAT_Collisions_Reset, STATGROUP_ChaosCollision)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("Collisions::BeginDetect"), STAT_Collisions_BeginDetect, STATGROUP_ChaosCollision)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("Collisions::EndDetect"), STAT_Collisions_EndDetect, STATGROUP_ChaosCollision)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("Collisions::Sort"), STAT_Collisions_Sort, STATGROUP_ChaosCollision)
 
 Chaos::DECLARE_CYCLE_STAT (TEXT("Collisions::DetectProbeCollisions"), STAT_Collisions_DetectProbeCollisions, STATGROUP_ChaosCollision)
 
void Chaos::UpdateSoftCollisionSettings (const FChaosPhysicsMaterial *PhysicsMaterial, const FGeometryParticleHandle *Particle, FReal &InOutThickess)
 

Variables

bool Chaos::CVars::bChaos_PBDCollisionSolver_UseJacobiPairSolver2
 
int32 Chaos::CollisionParticlesBVHDepth = 4
 
FAutoConsoleVariableRef Chaos::CVarCollisionParticlesBVHDepth (TEXT("p.CollisionParticlesBVHDepth"), CollisionParticlesBVHDepth, TEXT("The maximum depth for collision particles bvh"))
 
int32 Chaos::ConstraintBPBVHDepth = 2
 
FAutoConsoleVariableRef Chaos::CVarConstraintBPBVHDepth (TEXT("p.ConstraintBPBVHDepth"), ConstraintBPBVHDepth, TEXT("The maximum depth for constraint bvh"))
 
int32 Chaos::BPTreeOfGrids = 1
 
FAutoConsoleVariableRef Chaos::CVarBPTreeOfGrids (TEXT("p.BPTreeOfGrids"), BPTreeOfGrids, TEXT("Whether to use a seperate tree of grids for bp"))
 
FRealSingle Chaos::CollisionFrictionOverride = -1.0f
 
FAutoConsoleVariableRef Chaos::CVarCollisionFrictionOverride (TEXT("p.CollisionFriction"), CollisionFrictionOverride, TEXT("Collision friction for all contacts if >= 0"))
 
FRealSingle Chaos::CollisionRestitutionOverride = -1.0f
 
FAutoConsoleVariableRef Chaos::CVarCollisionRestitutionOverride (TEXT("p.CollisionRestitution"), CollisionRestitutionOverride, TEXT("Collision restitution for all contacts if >= 0"))
 
FRealSingle Chaos::CollisionAngularFrictionOverride = -1.0f
 
FAutoConsoleVariableRef Chaos::CVarCollisionAngularFrictionOverride (TEXT("p.CollisionAngularFriction"), CollisionAngularFrictionOverride, TEXT("Collision angular friction for all contacts if >= 0"))
 
FRealSingle Chaos::CollisionBaseFrictionImpulseOverride = -1.0f
 
FAutoConsoleVariableRef Chaos::CVarCollisionBaseFrictionImpulseOverride (TEXT("p.CollisionBaseFrictionImpulse"), CollisionBaseFrictionImpulseOverride, TEXT("Collision base friction position impulse for all contacts if >= 0"))
 
CHAOS_API int32 Chaos::EnableCollisions = 1
 
FAutoConsoleVariableRef Chaos::CVarEnableCollisions (TEXT("p.EnableCollisions"), EnableCollisions, TEXT("Enable/Disable collisions on the Chaos solver."))
 
FRealSingle Chaos::DefaultCollisionFriction = 0
 
FAutoConsoleVariableRef Chaos::CVarDefaultCollisionFriction (TEXT("p.DefaultCollisionFriction"), DefaultCollisionFriction, TEXT("Collision friction default value if no materials are found."))
 
FRealSingle Chaos::DefaultCollisionRestitution = 0
 
FAutoConsoleVariableRef Chaos::CVarDefaultCollisionRestitution (TEXT("p.DefaultCollisionRestitution"), DefaultCollisionRestitution, TEXT("Collision restitution default value if no materials are found."))
 
FRealSingle Chaos::CollisionRestitutionThresholdOverride = -1.0f
 
FAutoConsoleVariableRef Chaos::CVarDefaultCollisionRestitutionThreshold (TEXT("p.CollisionRestitutionThreshold"), CollisionRestitutionThresholdOverride, TEXT("Collision restitution threshold override if >= 0 (units of acceleration)"))
 
int32 Chaos::CollisionCanAlwaysDisableContacts = 0
 
FAutoConsoleVariableRef Chaos::CVarCollisionCanAlwaysDisableContacts (TEXT("p.CollisionCanAlwaysDisableContacts"), CollisionCanAlwaysDisableContacts, TEXT("Collision culling will always be able to permanently disable contacts"))
 
int32 Chaos::CollisionCanNeverDisableContacts = 0
 
FAutoConsoleVariableRef Chaos::CVarCollisionCanNeverDisableContacts (TEXT("p.CollisionCanNeverDisableContacts"), CollisionCanNeverDisableContacts, TEXT("Collision culling will never be able to permanently disable contacts"))
 
bool Chaos::CollisionsAllowParticleTracking = true
 
FAutoConsoleVariableRef Chaos::CVarCollisionsAllowParticleTracking (TEXT("p.Chaos.Collision.AllowParticleTracking"), CollisionsAllowParticleTracking, TEXT("Allow particles to track their collisions constraints when their DoBufferCollisions flag is enable [def:true]"))
 
bool Chaos::bCollisionsEnableEdgeCollisionPruning = true
 
bool Chaos::bCollisionsEnableMeshCollisionPruning = true
 
bool Chaos::bCollisionsEnableSubSurfaceCollisionPruning = false
 
FAutoConsoleVariableRef Chaos::CVarCollisionsEnableEdgeCollisionPruning (TEXT("p.Chaos.Collision.EnableEdgeCollisionPruning"), bCollisionsEnableEdgeCollisionPruning, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarCollisionsEnableMeshCollisionPruning (TEXT("p.Chaos.Collision.EnableMeshCollisionPruning"), bCollisionsEnableMeshCollisionPruning, TEXT(""))
 
FAutoConsoleVariableRef Chaos::CVarCollisionsEnableSubSurfaceCollisionPruning (TEXT("p.Chaos.Collision.EnableSubSurfaceCollisionPruning"), bCollisionsEnableSubSurfaceCollisionPruning, TEXT(""))
 
bool Chaos::DebugDrawProbeDetection = false
 
FAutoConsoleVariableRef Chaos::CVarDebugDrawProbeDetection (TEXT("p.Chaos.Collision.DebugDrawProbeDetection"), DebugDrawProbeDetection, TEXT("Draw probe constraint detection."))