10#pragma warning(disable:4946)
15template<
class T,
int d>
16class TPBDRigidsEvolution;
20template<
class T,
int d>
168 this->
InvM(Index) = 0.0f;
175 this->
InvM(Index) = 0.0f;
184 1.f / this->
I(Index)[0],
185 1.f / this->
I(Index)[1],
186 1.f / this->
I(Index)[2]);
188 this->
SetP(Index, this->
GetX(Index));
233 Ar << MQ << MPreV << MPreW;
286template <
typename T,
int d>
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition ChaosArchive.h:167
Definition ArrayCollectionArray.h:15
void Resize(const int Num) override
Definition ArrayCollectionArray.h:79
int32 AddArray(TArrayCollectionArrayBase *Array)
Definition ArrayCollection.h:36
Definition ParticleHandle.h:436
FORCEINLINE THandleType * Handle(int32 Index) const
Definition GeometryParticles.h:474
EParticleType MParticleType
Definition GeometryParticles.h:637
void SetV(const int32 Index, const TVector< T, d > &InV)
Definition KinematicGeometryParticles.h:39
const TVector< T, d > GetW(const int32 Index) const
Definition KinematicGeometryParticles.h:47
const TVector< T, d > GetV(const int32 Index) const
Definition KinematicGeometryParticles.h:38
void SetW(const int32 Index, const TVector< T, d > &InW)
Definition KinematicGeometryParticles.h:48
Definition ParticleHandle.h:987
Definition PBDRigidParticles.h:22
const TVector< T, d > PreW(const int32 index) const
Definition PBDRigidParticles.h:88
FORCEINLINE const TVector< T, d > & GetP(const int32 index) const
Definition PBDRigidParticles.h:66
TPBDRigidParticleHandle< T, d > THandleType
Definition PBDRigidParticles.h:116
void SetSleepType(int32 Index, ESleepType InSleepType)
Definition PBDRigidParticles.h:208
FORCEINLINE void SetQf(const int32 index, const TRotation< FRealSingle, d > &InQ)
Definition PBDRigidParticles.h:76
void SetObjectState(int32 Index, EObjectStateType InObjectState)
Definition PBDRigidParticles.h:161
const TVector< FRealSingle, d > GetPreVf(const int32 index) const
Definition PBDRigidParticles.h:84
void SetPreWf(const int32 index, const TVector< FRealSingle, d > &InPreW)
Definition PBDRigidParticles.h:94
FORCEINLINE const TRotation< FRealSingle, d > GetQf(const int32 index) const
Definition PBDRigidParticles.h:75
FORCEINLINE const TVector< T, d > & P(const int32 index) const
Definition PBDRigidParticles.h:63
void SetTransformPQCom(const int32 index, const TVector< T, d > &InPCom, const TRotation< T, d > &InQCom)
Definition PBDRigidParticles.h:104
void SetPreVf(const int32 index, const TVector< FRealSingle, d > &InPreV)
Definition PBDRigidParticles.h:85
FORCEINLINE void SetQ(const int32 index, const TRotation< T, d > &InQ)
Definition PBDRigidParticles.h:74
FORCEINLINE const TRotation< T, d > GetQ(const int32 index) const
Definition PBDRigidParticles.h:73
TPBDRigidParticles()
Definition PBDRigidParticles.h:30
const TVector< T, d > XCom(const int32 index) const
Definition PBDRigidParticles.h:97
THandleType * Handle(int32 Index)
Definition PBDRigidParticles.h:120
FORCEINLINE const TRotation< T, d > Q(const int32 index) const
Definition PBDRigidParticles.h:70
const TVector< T, d > GetPreV(const int32 index) const
Definition PBDRigidParticles.h:82
TPBDRigidParticles(const TPBDRigidParticles< T, d > &Other)=delete
void SetPreV(const int32 index, const TVector< T, d > &InPreV)
Definition PBDRigidParticles.h:83
FORCEINLINE void SetP(const int32 index, const TVector< T, d > &InP)
Definition PBDRigidParticles.h:67
void SetPreW(const int32 index, const TVector< T, d > &InPreW)
Definition PBDRigidParticles.h:92
int32 SolverBodyIndex(const int32 index) const
Definition PBDRigidParticles.h:112
const TVector< T, d > PreV(const int32 index) const
Definition PBDRigidParticles.h:79
const TRotation< T, d > RCom(const int32 index) const
Definition PBDRigidParticles.h:101
const TRotation< T, d > QCom(const int32 index) const
Definition PBDRigidParticles.h:102
const TVector< T, d > GetPreW(const int32 index) const
Definition PBDRigidParticles.h:91
FString ToString(int32 index) const
Definition PBDRigidParticles.h:218
const THandleType * Handle(int32 Index) const
Definition PBDRigidParticles.h:117
TPBDRigidParticles(TPBDRigidParticles< T, d > &&Other)
Definition PBDRigidParticles.h:37
const TVector< FRealSingle, d > GetPreWf(const int32 index) const
Definition PBDRigidParticles.h:93
virtual ~TPBDRigidParticles()
Definition PBDRigidParticles.h:49
void SetSleeping(int32 Index, bool bSleeping)
Definition PBDRigidParticles.h:122
const TVector< T, d > PCom(const int32 index) const
Definition PBDRigidParticles.h:98
void RegisterArrays()
Definition PBDRigidParticles.h:53
void SetSolverBodyIndex(const int32 index, const int32 InSolverBodyIndex)
Definition PBDRigidParticles.h:113
virtual void Serialize(FChaosArchive &Ar) override
Definition PBDRigidParticles.h:224
Definition Particles.h:22
const TVector< T, d > & GetX(const int32 Index) const
Definition Particles.h:156
Definition RigidParticles.h:78
FORCEINLINE ESleepType SleepType(const int32 Index) const
Definition RigidParticles.h:244
FORCEINLINE const TVec3< FRealSingle > & InvI(const int32 Index) const
Definition RigidParticles.h:177
FORCEINLINE const TRotation< T, d > & RotationOfMass(const int32 Index) const
Definition RigidParticles.h:192
virtual void Serialize(FChaosArchive &Ar) override
Definition RigidParticles.h:297
FORCEINLINE const T M(const int32 Index) const
Definition RigidParticles.h:183
FORCEINLINE void AddSleepData(TGeometryParticleHandle< T, d > *Particle, bool Sleeping)
Definition RigidParticles.h:258
FORCEINLINE const T InvM(const int32 Index) const
Definition RigidParticles.h:186
FORCEINLINE const EObjectStateType ObjectState(const int32 Index) const
Definition RigidParticles.h:276
FORCEINLINE FString ToString(int32 Index) const
Definition RigidParticles.h:288
FORCEINLINE const TVec3< FRealSingle > & I(const int32 Index) const
Definition RigidParticles.h:174
const TArrayCollectionArray< TRotation< FRealSingle, d > > & GetR() const
Definition SimpleGeometryParticles.h:58
FORCEINLINE const TRotation< FRealSingle, d > GetRf(const int32 Index) const
Definition SimpleGeometryParticles.h:56
virtual CORE_API void UsingCustomVersion(const struct FGuid &Guid)
Definition Archive.cpp:590
CORE_API int32 CustomVer(const struct FGuid &Key) const
Definition Archive.cpp:602
Definition SkeletalMeshComponent.h:307
FChaosArchive & operator<<(FChaosArchive &Ar, FRigidParticleControlFlags &Flags)
Definition RigidParticleControlFlags.cpp:15
EObjectStateType
Definition ObjectState.h:10
CHAOS_API void EnsureSleepingObjectState(EObjectStateType ObjectState)
Definition PBDRigidParticles.cpp:5
TPBDRigidParticles< FReal, 3 > FPBDRigidParticles
Definition PhysicsProxy.h:23
TVector< FReal, 3 > FVec3
Definition Core.h:17
ESleepType
Definition RigidParticles.h:23
U16 Index
Definition radfft.cpp:71
static UE_FORCEINLINE_HINT bool IsNearlyZero(float Value, float ErrorTolerance=UE_SMALL_NUMBER)
Definition UnrealMathUtility.h:407
CORE_API static const FGuid GUID
Definition UE5ReleaseStreamObjectVersion.h:22