135 template<
typename SolverParticlesOrRange>
197 template<
typename SolverParticlesOrRange>
200 const int32 ParticleIndex = ParticleOffset +
Index;
201 if (Particles.InvM(ParticleIndex) == (
FSolverReal)0.)
206 FSolverVec3& ParticlePosition = Particles.P(ParticleIndex);
220 const int32 ParticleOffset;
221 const int32 ParticleCount;
223 FPBDStiffness Stiffness;
224 FPBDStiffness Damping;
#define UE_CHAOS_DECLARE_INDEXED_PROPERTYCOLLECTION_NAME(PropertyName, Type)
Definition CollectionPropertyFacade.h:893
@ ForceInit
Definition CoreMiscDefines.h:155
#define DECLARE_CYCLE_STAT(CounterName, StatId, GroupId)
Definition Stats.h:669
#define SCOPE_CYCLE_COUNTER(Stat)
Definition Stats.h:650
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition CollectionPropertyFacade.h:49
Definition PBDAnimDriveConstraint.h:20
void ApplyProperties(const FSolverReal Dt, const int32 NumIterations)
Definition PBDAnimDriveConstraint.h:119
FSolverVec2 GetStiffness() const
Definition PBDAnimDriveConstraint.h:75
TConstArrayView< FSolverVec3 > GetConstArrayView(const FSolverParticles &Particles, const TArray< FSolverVec3 > &Data) const
Definition PBDAnimDriveConstraint.h:125
FSolverVec2 GetDamping() const
Definition PBDAnimDriveConstraint.h:78
void SetProperties(const FCollectionPropertyConstFacade &PropertyCollection, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps)
Definition PBDAnimDriveConstraint.h:80
void Apply(SolverParticlesOrRange &InParticles, const FSolverReal Dt) const
Definition PBDAnimDriveConstraint.h:136
~FPBDAnimDriveConstraint()
Definition PBDAnimDriveConstraint.h:72
FPBDAnimDriveConstraint(const int32 InParticleOffset, const int32 InParticleCount, const TArray< FSolverVec3 > &InAnimationPositions, const TArray< FSolverVec3 > &, const TArray< FSolverVec3 > &InAnimationVelocities, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const TConstArrayView< FRealSingle > &DampingMultipliers)
Definition PBDAnimDriveConstraint.h:52
TConstArrayView< FSolverVec3 > GetConstArrayView(const FSolverParticlesRange &Particles, const TArray< FSolverVec3 > &Data) const
Definition PBDAnimDriveConstraint.h:130
void SetProperties(const FSolverVec2 &InStiffness, const FSolverVec2 &InDamping)
Definition PBDAnimDriveConstraint.h:112
static bool IsEnabled(const FCollectionPropertyConstFacade &PropertyCollection)
Definition PBDAnimDriveConstraint.h:22
UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME(AnimDriveStiffness, float)
FPBDAnimDriveConstraint(const int32 InParticleOffset, const int32 InParticleCount, const TArray< FSolverVec3 > &InAnimationPositions, const TArray< FSolverVec3 > &InAnimationVelocities, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const FCollectionPropertyConstFacade &PropertyCollection)
Definition PBDAnimDriveConstraint.h:27
UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME(AnimDriveDamping, float)
Definition PBDStiffness.h:21
void SetWeightedValue(const FSolverVec2 &InWeightedValue, FSolverReal MaxStiffness=DefaultPBDMaxStiffness)
Definition PBDStiffness.h:65
void ApplyPBDValues(const FSolverReal Dt, const int32 NumIterations)
Definition PBDStiffness.h:124
const FSolverVec2 & GetWeightedValue() const
Definition PBDWeightMap.h:68
bool HasWeightMap() const
Definition PBDWeightMap.h:55
Definition SoftsSolverParticlesRange.h:12
Definition PBDSoftsSolverParticles.h:20
TConstArrayView< T > GetConstArrayView(const TArray< T > &Array) const
Definition ParticlesRange.h:73
Definition UnrealString.h.inl:34
Definition CollectionEmbeddedSpringConstraintFacade.cpp:6
FRealSingle FSolverReal
Definition PBDSoftsEvolutionFwd.h:31
void CHAOS_API PhysicsParallelFor(int32 InNum, TFunctionRef< void(int32)> InCallable, bool bForceSingleThreaded=false)
Definition Parallel.cpp:55
U16 Index
Definition radfft.cpp:71
Definition CollectionMuscleActivationFacade.h:20