p.Chaos.Joint.MultiDimension
p.Chaos.Joint.MultiDimension
#Overview
name: p.Chaos.Joint.MultiDimension
This variable is created as a Console Variable (cvar).
- type:
Var
- help: ``
It is referenced in 3
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of p.Chaos.Joint.MultiDimension is to control the behavior of joint constraints in the Chaos physics system, specifically related to multi-dimensional joint solving.
This setting variable is primarily used in the Chaos physics system, which is part of Unreal Engine’s experimental physics simulation module. It is referenced in the JointSolverConstraints.cpp file, indicating its relevance to the joint solver constraints subsystem within Chaos.
The value of this variable is set using an FAutoConsoleVariableRef, which means it can be modified at runtime through console commands. Its default value is set to true (1).
The associated variable bChaos_Joint_MultiDimension directly interacts with p.Chaos.Joint.MultiDimension. They share the same value, with bChaos_Joint_MultiDimension being the actual boolean used in the code logic.
Developers must be aware that this variable affects the behavior of joint constraints in the Chaos physics system. When enabled (set to true), it modifies the number of rows in the joint solver constraint data, potentially changing how multi-dimensional joint constraints are solved.
Best practices when using this variable include:
- Understanding the implications of enabling or disabling multi-dimensional joint solving in your specific use case.
- Testing your physics simulations with both enabled and disabled states to ensure desired behavior.
- Being cautious when modifying this variable at runtime, as it may have immediate effects on ongoing physics simulations.
Regarding the associated variable bChaos_Joint_MultiDimension:
- It is an int32 variable used as a boolean flag in the code.
- It directly controls the logic for multi-dimensional joint solving in the AddPointPositionConstraint function.
- When true, it modifies the NumRows property of the last three elements in the RowDatas array, potentially affecting how joint constraints are solved.
- Developers should be aware that changing this variable will directly impact the behavior of joint constraints in the Chaos physics system.
- Best practices include thoroughly testing any changes to this variable and understanding its effects on your specific physics simulations.
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Source/Runtime/Experimental/Chaos/Private/Chaos/Joint/JointSolverConstraints.cpp:12
Scope: file
Source code excerpt:
int32 bChaos_Joint_MultiDimension = true;
FAutoConsoleVariableRef CVarChaosJointMultiDimension(TEXT("p.Chaos.Joint.MultiDimension"), bChaos_Joint_MultiDimension, TEXT(""));
namespace Chaos
{
//
//////////////////////////////////////////////////////////////////////////
#Associated Variable and Callsites
This variable is associated with another variable named bChaos_Joint_MultiDimension
. They share the same value. See the following C++ source code.
#Loc: <Workspace>/Engine/Source/Runtime/Experimental/Chaos/Private/Chaos/Joint/JointSolverConstraints.cpp:11
Scope: file
Source code excerpt:
//PRAGMA_DISABLE_OPTIMIZATION
int32 bChaos_Joint_MultiDimension = true;
FAutoConsoleVariableRef CVarChaosJointMultiDimension(TEXT("p.Chaos.Joint.MultiDimension"), bChaos_Joint_MultiDimension, TEXT(""));
namespace Chaos
{
//
//////////////////////////////////////////////////////////////////////////
#Loc: <Workspace>/Engine/Source/Runtime/Experimental/Chaos/Private/Chaos/Joint/JointSolverConstraints.cpp:423
Scope (from outer to inner):
file
namespace Chaos
function void FJointSolverConstraints::AddPointPositionConstraint
Source code excerpt:
}
if (bChaos_Joint_MultiDimension)
{
RowDatas.Last(2).NumRows = 3;
RowDatas.Last(1).NumRows = 0;
RowDatas.Last(0).NumRows = 0;
}
}