UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Chaos::FJointSolverJointState Class Reference

#include <JointSolverConstraints.h>

Public Member Functions

void Init (const FPBDJointSolverSettings &SolverSettings, const FPBDJointSettings &JointSettings, const FVec3 &PrevP0, const FRotation3 &PrevQ0, const FVec3 &PrevP1, const FRotation3 &PrevQ1, const FReal InvM0, const FVec3 &InvIL0, const FReal InvM1, const FVec3 &InvIL1, const FRigidTransform3 &XL0, const FRigidTransform3 &XL1)
 
FORCEINLINE void Update (const FVec3 &P0, const FRotation3 &Q0, const FVec3 &P1, const FRotation3 &Q1)
 
FORCEINLINE void InitDerivedState ()
 
FORCEINLINE void UpdateDerivedState ()
 
FORCEINLINE void ApplyDelta (const FVec3 &DP0, const FVec3 &DR0, const FVec3 &DP1, const FVec3 &DR1)
 
FORCEINLINE void ApplyRotationDelta (const FVec3 &DR0, const FVec3 &DR1)
 

Public Attributes

FRigidTransform3 XLs [MaxConstrainedBodies]
 
FVec3 InvILs [MaxConstrainedBodies]
 
FReal InvMs [MaxConstrainedBodies]
 
FVec3 Xs [MaxConstrainedBodies]
 
FRotation3 Rs [MaxConstrainedBodies]
 
FVec3 Ps [MaxConstrainedBodies]
 
FRotation3 Qs [MaxConstrainedBodies]
 
FMatrix33 InvIs [MaxConstrainedBodies]
 
FVec3 PrevPs [MaxConstrainedBodies]
 
FRotation3 PrevQs [MaxConstrainedBodies]
 
FVec3 PrevXs [MaxConstrainedBodies]
 
FVec3 DPs [MaxConstrainedBodies]
 
FVec3 DRs [MaxConstrainedBodies]
 
FReal PositionTolerance
 
FReal AngleTolerance
 

Static Public Attributes

static const int32 MaxConstrainedBodies = 2
 

Detailed Description

Body and joint state required during a joint's solve (used by all sub-constraints in the joint)

Member Function Documentation

◆ ApplyDelta()

FORCEINLINE void Chaos::FJointSolverJointState::ApplyDelta ( const FVec3 DP0,
const FVec3 DR0,
const FVec3 DP1,
const FVec3 DR1 
)

◆ ApplyRotationDelta()

FORCEINLINE void Chaos::FJointSolverJointState::ApplyRotationDelta ( const FVec3 DR0,
const FVec3 DR1 
)

◆ Init()

FORCEINLINE void Chaos::FJointSolverJointState::Init ( const FPBDJointSolverSettings SolverSettings,
const FPBDJointSettings JointSettings,
const FVec3 PrevP0,
const FRotation3 PrevQ0,
const FVec3 PrevP1,
const FRotation3 PrevQ1,
const FReal  InvM0,
const FVec3 InvIL0,
const FReal  InvM1,
const FVec3 InvIL1,
const FRigidTransform3 XL0,
const FRigidTransform3 XL1 
)

◆ InitDerivedState()

FORCEINLINE void Chaos::FJointSolverJointState::InitDerivedState ( )

◆ Update()

FORCEINLINE void Chaos::FJointSolverJointState::Update ( const FVec3 P0,
const FRotation3 Q0,
const FVec3 P1,
const FRotation3 Q1 
)

◆ UpdateDerivedState()

FORCEINLINE void Chaos::FJointSolverJointState::UpdateDerivedState ( )

Member Data Documentation

◆ AngleTolerance

FReal Chaos::FJointSolverJointState::AngleTolerance

◆ DPs

FVec3 Chaos::FJointSolverJointState::DPs[MaxConstrainedBodies]

◆ DRs

FVec3 Chaos::FJointSolverJointState::DRs[MaxConstrainedBodies]

◆ InvILs

FVec3 Chaos::FJointSolverJointState::InvILs[MaxConstrainedBodies]

◆ InvIs

FMatrix33 Chaos::FJointSolverJointState::InvIs[MaxConstrainedBodies]

◆ InvMs

FReal Chaos::FJointSolverJointState::InvMs[MaxConstrainedBodies]

◆ MaxConstrainedBodies

const int32 Chaos::FJointSolverJointState::MaxConstrainedBodies = 2
static

◆ PositionTolerance

FReal Chaos::FJointSolverJointState::PositionTolerance

◆ PrevPs

FVec3 Chaos::FJointSolverJointState::PrevPs[MaxConstrainedBodies]

◆ PrevQs

FRotation3 Chaos::FJointSolverJointState::PrevQs[MaxConstrainedBodies]

◆ PrevXs

FVec3 Chaos::FJointSolverJointState::PrevXs[MaxConstrainedBodies]

◆ Ps

FVec3 Chaos::FJointSolverJointState::Ps[MaxConstrainedBodies]

◆ Qs

FRotation3 Chaos::FJointSolverJointState::Qs[MaxConstrainedBodies]

◆ Rs

FRotation3 Chaos::FJointSolverJointState::Rs[MaxConstrainedBodies]

◆ XLs

FRigidTransform3 Chaos::FJointSolverJointState::XLs[MaxConstrainedBodies]

◆ Xs

FVec3 Chaos::FJointSolverJointState::Xs[MaxConstrainedBodies]

The documentation for this class was generated from the following files: