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

#include <XPBDSpringConstraints.h>

+ Inheritance diagram for Chaos::Softs::FXPBDBendingSpringConstraints:

Public Member Functions

 FXPBDBendingSpringConstraints (const FSolverParticlesRange &Particles, const TArray< TVec2< int32 > > &InConstraints, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const FCollectionPropertyConstFacade &PropertyCollection)
 
 FXPBDBendingSpringConstraints (const FSolverParticlesRange &Particles, const TArray< TVec2< int32 > > &InConstraints, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const FCollectionPropertyConstFacade &PropertyCollection, bool bTrimKinematicConstraints)
 
 FXPBDBendingSpringConstraints (const FSolverParticles &Particles, int32 ParticleOffset, int32 ParticleCount, const TArray< TVec2< int32 > > &InConstraints, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const FCollectionPropertyConstFacade &PropertyCollection)
 
 FXPBDBendingSpringConstraints (const FSolverParticles &Particles, int32 ParticleOffset, int32 ParticleCount, const TArray< TVec2< int32 > > &InConstraints, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const FCollectionPropertyConstFacade &PropertyCollection, bool bTrimKinematicConstraints)
 
virtual ~FXPBDBendingSpringConstraints () override=default
 
CHAOS_API void SetProperties (const FCollectionPropertyConstFacade &PropertyCollection, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps)
 
- Public Member Functions inherited from Chaos::Softs::FXPBDSpringConstraints
template<int32 Valence UE_REQUIRES>
 FXPBDSpringConstraints (const FSolverParticlesRange &Particles, const TArray< TVector< int32, Valence > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const TConstArrayView< FRealSingle > &DampingMultipliers, const FSolverVec2 &InStiffness, const FSolverVec2 &InDampingRatio)
 
template<int32 Valence UE_REQUIRES>
 FXPBDSpringConstraints (const FSolverParticlesRange &Particles, const TArray< TVector< int32, Valence > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const TConstArrayView< FRealSingle > &DampingMultipliers, const FSolverVec2 &InStiffness, const FSolverVec2 &InDampingRatio, bool bTrimKinematicConstraints)
 
template<int32 Valence UE_REQUIRES>
 FXPBDSpringConstraints (const FSolverParticles &Particles, int32 ParticleOffset, int32 ParticleCount, const TArray< TVector< int32, Valence > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const TConstArrayView< FRealSingle > &DampingMultipliers, const FSolverVec2 &InStiffness, const FSolverVec2 &InDampingRatio)
 
template<int32 Valence UE_REQUIRES>
 FXPBDSpringConstraints (const FSolverParticles &Particles, int32 ParticleOffset, int32 ParticleCount, const TArray< TVector< int32, Valence > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const TConstArrayView< FRealSingle > &DampingMultipliers, const FSolverVec2 &InStiffness, const FSolverVec2 &InDampingRatio, bool bTrimKinematicConstraints)
 
virtual ~FXPBDSpringConstraints () override
 
void Init () const
 
void SetProperties (const FSolverVec2 &InStiffness, const FSolverVec2 &InDampingRatio=FSolverVec2::ZeroVector)
 
void ApplyProperties (const FSolverReal Dt, const int32 NumIterations)
 
template<typename SolverParticlesOrRange >
CHAOS_API void Apply (SolverParticlesOrRange &Particles, const FSolverReal Dt) const
 
CHAOS_API void UpdateLinearSystem (const FSolverParticlesRange &Particles, const FSolverReal Dt, FEvolutionLinearSystem &LinearSystem) const
 
const TArray< int32 > & GetConstraintsPerColorStartIndex () const
 
template<typename SolverParticlesOrRange >
void InitColor (const SolverParticlesOrRange &Particles)
 
template<typename SolverParticlesOrRange >
void Apply (SolverParticlesOrRange &Particles, const FSolverReal Dt) const
 
- Public Member Functions inherited from Chaos::Softs::FPBDSpringConstraintsBase
template<int32 Valence UE_REQUIRES>
 FPBDSpringConstraintsBase (const FSolverParticlesRange &Particles, const TArray< TVector< int32, Valence > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const FSolverVec2 &InStiffness, bool bTrimKinematicConstraints=false, FSolverReal MaxStiffness=FPBDStiffness::DefaultPBDMaxStiffness)
 
template<int32 Valence UE_REQUIRES>
 FPBDSpringConstraintsBase (const FSolverParticles &Particles, int32 InParticleOffset, int32 InParticleCount, const TArray< TVector< int32, Valence > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const FSolverVec2 &InStiffness, bool bTrimKinematicConstraints=false, FSolverReal MaxStiffness=FPBDStiffness::DefaultPBDMaxStiffness)
 
virtual ~FPBDSpringConstraintsBase ()
 
void SetProperties (const FSolverVec2 &InStiffness)
 
void ApplyProperties (const FSolverReal Dt, const int32 NumIterations)
 
const TArray< TVec2< int32 > > & GetConstraints () const
 
void ResetRestLengths (const TConstArrayView< FSolverVec3 > &Positions)
 

Static Public Member Functions

static bool IsEnabled (const FCollectionPropertyConstFacade &PropertyCollection)
 

Additional Inherited Members

- Static Public Attributes inherited from Chaos::Softs::FXPBDSpringConstraints
static constexpr FSolverReal MinStiffness = (FSolverReal)0
 
static constexpr FSolverReal MaxStiffness = (FSolverReal)1e9
 
static constexpr FSolverReal MinDampingRatio = (FSolverReal)0.
 
static constexpr FSolverReal MaxDampingRatio = (FSolverReal)1000.
 
- Protected Member Functions inherited from Chaos::Softs::FPBDSpringConstraintsBase
template<typename SolverParticlesOrRange >
FSolverVec3 GetDelta (const SolverParticlesOrRange &Particles, const int32 ConstraintIndex, const FSolverReal ExpStiffnessValue) const
 
void CalculateRestLengths (const TConstArrayView< FSolverVec3 > &Positions, const TArrayView< FSolverReal > &DistsToCompute) const
 
- Protected Attributes inherited from Chaos::Softs::FXPBDSpringConstraints
FPBDWeightMap DampingRatio
 
TArray< TVec2< int32 > > Constraints
 
const int32 ParticleOffset
 
const int32 ParticleCount
 
FPBDStiffness Stiffness
 
- Protected Attributes inherited from Chaos::Softs::FPBDSpringConstraintsBase
TArray< TVec2< int32 > > Constraints
 
TArray< FSolverRealDists
 
const int32 ParticleOffset
 
const int32 ParticleCount
 
FPBDStiffness Stiffness
 

Constructor & Destructor Documentation

◆ FXPBDBendingSpringConstraints() [1/4]

Chaos::Softs::FXPBDBendingSpringConstraints::FXPBDBendingSpringConstraints ( const FSolverParticlesRange Particles,
const TArray< TVec2< int32 > > &  InConstraints,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps,
const FCollectionPropertyConstFacade PropertyCollection 
)
inline

◆ FXPBDBendingSpringConstraints() [2/4]

Chaos::Softs::FXPBDBendingSpringConstraints::FXPBDBendingSpringConstraints ( const FSolverParticlesRange Particles,
const TArray< TVec2< int32 > > &  InConstraints,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps,
const FCollectionPropertyConstFacade PropertyCollection,
bool  bTrimKinematicConstraints 
)
inline

◆ FXPBDBendingSpringConstraints() [3/4]

Chaos::Softs::FXPBDBendingSpringConstraints::FXPBDBendingSpringConstraints ( const FSolverParticles Particles,
int32  ParticleOffset,
int32  ParticleCount,
const TArray< TVec2< int32 > > &  InConstraints,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps,
const FCollectionPropertyConstFacade PropertyCollection 
)
inline

◆ FXPBDBendingSpringConstraints() [4/4]

Chaos::Softs::FXPBDBendingSpringConstraints::FXPBDBendingSpringConstraints ( const FSolverParticles Particles,
int32  ParticleOffset,
int32  ParticleCount,
const TArray< TVec2< int32 > > &  InConstraints,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps,
const FCollectionPropertyConstFacade PropertyCollection,
bool  bTrimKinematicConstraints 
)
inline

◆ ~FXPBDBendingSpringConstraints()

virtual Chaos::Softs::FXPBDBendingSpringConstraints::~FXPBDBendingSpringConstraints ( )
overridevirtualdefault

Member Function Documentation

◆ IsEnabled()

static bool Chaos::Softs::FXPBDBendingSpringConstraints::IsEnabled ( const FCollectionPropertyConstFacade PropertyCollection)
inlinestatic

◆ SetProperties()

void Chaos::Softs::FXPBDBendingSpringConstraints::SetProperties ( const FCollectionPropertyConstFacade PropertyCollection,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps 
)

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