10#include "Containers/Map.h"
11#include "Containers/Set.h"
98 template<
typename SolverParticlesOrRange>
113 template<
typename SolverParticlesOrRange>
#define checkSlow(expr)
Definition AssertionMacros.h:332
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32 Offset
Definition VulkanMemory.cpp:4033
Definition PBDLongRangeConstraintsBase.h:17
virtual PRAGMA_DISABLE_DEPRECATION_WARNINGS ~FPBDLongRangeConstraintsBase()
Definition PBDLongRangeConstraintsBase.h:49
const int32 ParticleOffset
Definition PBDLongRangeConstraintsBase.h:129
FSolverReal GetRefLength(const FTether &Tether) const
Definition PBDLongRangeConstraintsBase.h:85
FSolverReal GetTargetLength(const FTether &Tether) const
Definition PBDLongRangeConstraintsBase.h:91
PRAGMA_ENABLE_DEPRECATION_WARNINGS FSolverVec2 GetStiffness() const
Definition PBDLongRangeConstraintsBase.h:53
FSolverReal GetScale(const FTether &Tether) const
Definition PBDLongRangeConstraintsBase.h:88
const TArray< TConstArrayView< FTether > > & GetTethers() const
Definition PBDLongRangeConstraintsBase.h:70
int32 GetStartParticle(const FTether &Tether) const
Definition PBDLongRangeConstraintsBase.h:76
static constexpr FSolverReal MaxTetherScale
Definition PBDLongRangeConstraintsBase.h:22
UE_NONCOPYABLE(FPBDLongRangeConstraintsBase)
static constexpr int32 TableSize
Definition PBDLongRangeConstraintsBase.h:127
int32 GetEndParticle(const FTether &Tether) const
Definition PBDLongRangeConstraintsBase.h:82
FPBDWeightMap TetherScale
Definition PBDLongRangeConstraintsBase.h:132
int32 GetEndIndex(const FTether &Tether) const
Definition PBDLongRangeConstraintsBase.h:79
TTuple< int32, int32, FRealSingle > FTether
Definition PBDLongRangeConstraintsBase.h:24
int32 GetStartIndex(const FTether &Tether) const
Definition PBDLongRangeConstraintsBase.h:73
const TArray< TConstArrayView< FTether > > & Tethers
Definition PBDLongRangeConstraintsBase.h:128
static constexpr FSolverReal MinTetherScale
Definition PBDLongRangeConstraintsBase.h:21
void SetProperties(const FSolverVec2 &InStiffness, const FSolverVec2 &InTetherScale, FSolverReal MeshScale=(FSolverReal) 1.)
Definition PBDLongRangeConstraintsBase.h:56
FSolverVec3 GetDelta(const SolverParticlesOrRange &Particles, const FTether &Tether, const FSolverReal InScale) const
Definition PBDLongRangeConstraintsBase.h:99
static CHAOS_API int32 GetMinParallelBatchSize()
Definition PBDLongRangeConstraintsBase.cpp:22
const int32 ParticleCount
Definition PBDLongRangeConstraintsBase.h:130
void ApplyProperties(const FSolverReal Dt, const int32 NumIterations)
Definition PBDLongRangeConstraintsBase.h:63
void GetDelta(const SolverParticlesOrRange &Particles, const FTether &Tether, const FSolverReal InScale, FSolverVec3 &OutDirection, FSolverReal &OutOffset) const
Definition PBDLongRangeConstraintsBase.h:114
FPBDStiffness Stiffness
Definition PBDLongRangeConstraintsBase.h:131
Definition PBDStiffness.h:21
void SetWeightedValue(const FSolverVec2 &InWeightedValue, FSolverReal MaxStiffness=DefaultPBDMaxStiffness)
Definition PBDStiffness.h:65
static constexpr FSolverReal DefaultPBDMaxStiffness
Definition PBDStiffness.h:24
void ApplyPBDValues(const FSolverReal Dt, const int32 NumIterations)
Definition PBDStiffness.h:124
Definition PBDWeightMap.h:19
void ApplyValues(bool *bOutUpdated=nullptr)
Definition PBDWeightMap.h:71
const FSolverVec2 & GetWeightedValue() const
Definition PBDWeightMap.h:68
void SetWeightedValue(const FSolverVec2 &InWeightedValue)
Definition PBDWeightMap.h:62
bool HasWeightMap() const
Definition PBDWeightMap.h:55
Definition SoftsSolverParticlesRange.h:12
Definition PBDSoftsSolverParticles.h:20
Definition CollectionEmbeddedSpringConstraintFacade.cpp:6
FRealSingle FSolverReal
Definition PBDSoftsEvolutionFwd.h:31
TVector< FSolverReal, 3 > FSolverVec3
Definition PBDSoftsEvolutionFwd.h:33