14 class FConvexOptimizer;
140 static_assert(
sizeof(FFlags) <=
sizeof(
FStorage));
144template<
class T,
int d>
184 UE_DEPRECATED(5.4,
"Use GetChildrenSpatial instead")
192 UE_DEPRECATED(5.4,
"Use GetChildrenSpatial instead")
267 TArrayCollectionArray<int32> MClusterGroupIndex;
274 TArrayCollectionArray<Chaos::FRealSingle> MCollisionImpulses;
278 TArrayCollectionArray<Chaos::FRealSingle> MExternalStrains;
281 TArrayCollectionArray<Chaos::FRealSingle> MStrains;
#define check(expr)
Definition AssertionMacros.h:314
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 ImplicitObjectUnion.h:351
Definition PBDRigidClusteredParticles.h:99
void SetInternalCluster(bool bSet)
Definition PBDRigidClusteredParticles.h:110
bool GetAnchored() const
Definition PBDRigidClusteredParticles.h:113
bool GetInternalCluster() const
Definition PBDRigidClusteredParticles.h:109
bool GetUnbreakable() const
Definition PBDRigidClusteredParticles.h:117
void SetUnbreakable(bool bSet)
Definition PBDRigidClusteredParticles.h:118
FFlags Flags
Definition PBDRigidClusteredParticles.h:137
FStorage Bits
Definition PBDRigidClusteredParticles.h:138
uint8 FStorage
Definition PBDRigidClusteredParticles.h:101
bool GetChildToParentLocked() const
Definition PBDRigidClusteredParticles.h:121
void SetAnchored(bool bSet)
Definition PBDRigidClusteredParticles.h:114
void SetChildToParentLocked(bool bSet)
Definition PBDRigidClusteredParticles.h:122
FRigidClusteredFlags()
Definition PBDRigidClusteredParticles.h:103
int32 AddArray(TArrayCollectionArrayBase *Array)
Definition ArrayCollection.h:36
const TPBDRigidClusteredParticleHandleImp< T, d, bPersistent > * CastToClustered() const
Definition ParticleHandle.h:1703
FORCEINLINE THandleType * Handle(int32 Index) const
Definition GeometryParticles.h:474
EParticleType MParticleType
Definition GeometryParticles.h:637
Definition PBDRigidClusteredParticles.h:146
auto & GetChildrenSpatial(int32 Idx)
Definition PBDRigidClusteredParticles.h:182
auto & ClusterIds(int32 Idx)
Definition PBDRigidClusteredParticles.h:173
const auto & ClusterIdsArray() const
Definition PBDRigidClusteredParticles.h:222
TPBDRigidClusteredParticles(const TPBDRigidParticles< T, d > &Other)=delete
THandleType * Handle(int32 Index)
Definition PBDRigidClusteredParticles.h:244
auto & ConnectivityEdges(int32 Idx)
Definition PBDRigidClusteredParticles.h:215
const auto & CollisionImpulses(int32 Idx) const
Definition PBDRigidClusteredParticles.h:203
const auto & ClusterIds(int32 Idx) const
Definition PBDRigidClusteredParticles.h:172
auto & ConvexOptimizers(int32 Idx)
Definition PBDRigidClusteredParticles.h:238
~TPBDRigidClusteredParticles()
Definition PBDRigidClusteredParticles.h:170
const auto & ClusterGroupIndexArray() const
Definition PBDRigidClusteredParticles.h:231
auto & Strains(int32 Idx)
Definition PBDRigidClusteredParticles.h:212
const TUniquePtr< FImplicitObjectUnionClustered > & ChildrenSpatial(int32 Idx) const
Definition PBDRigidClusteredParticles.h:185
auto & CollisionImpulsesArray()
Definition PBDRigidClusteredParticles.h:205
auto & ClusterGroupIndexArray()
Definition PBDRigidClusteredParticles.h:232
TPBDRigidClusteredParticles(TPBDRigidParticles< T, d > &&Other)
Definition PBDRigidClusteredParticles.h:154
const auto & ConnectivityEdgesArray() const
Definition PBDRigidClusteredParticles.h:220
const auto & ExternalStrains(int32 Idx) const
Definition PBDRigidClusteredParticles.h:207
const auto & StrainsArray() const
Definition PBDRigidClusteredParticles.h:228
TPBDRigidClusteredParticles()
Definition PBDRigidClusteredParticles.h:148
const THandleType * Handle(int32 Index) const
Definition PBDRigidClusteredParticles.h:241
const auto & ConnectivityEdges(int32 Idx) const
Definition PBDRigidClusteredParticles.h:214
const auto & GetChildrenSpatial(int32 Idx) const
Definition PBDRigidClusteredParticles.h:181
TPBDRigidClusteredParticleHandle< T, d > THandleType
Definition PBDRigidClusteredParticles.h:240
auto & RigidClusteredFlags()
Definition PBDRigidClusteredParticles.h:235
auto & StrainsArray()
Definition PBDRigidClusteredParticles.h:229
auto & ClusterGroupIndex(int32 Idx)
Definition PBDRigidClusteredParticles.h:179
FRigidClusteredFlags & RigidClusteredFlags(int32 Idx)
Definition PBDRigidClusteredParticles.h:218
const auto & Strains(int32 Idx) const
Definition PBDRigidClusteredParticles.h:211
auto & CollisionImpulses(int32 Idx)
Definition PBDRigidClusteredParticles.h:204
const auto & ChildToParent(int32 Idx) const
Definition PBDRigidClusteredParticles.h:175
const auto & PhysicsProxies(int32 Idx) const
Definition PBDRigidClusteredParticles.h:200
const auto & ConvexOptimizers(int32 Idx) const
Definition PBDRigidClusteredParticles.h:237
auto & PhysicsProxies(int32 Idx)
Definition PBDRigidClusteredParticles.h:201
const auto & RigidClusteredFlags() const
Definition PBDRigidClusteredParticles.h:234
const auto & ClusterGroupIndex(int32 Idx) const
Definition PBDRigidClusteredParticles.h:178
auto & ClusterIdsArray()
Definition PBDRigidClusteredParticles.h:223
auto & ExternalStrains(int32 Idx)
Definition PBDRigidClusteredParticles.h:208
auto & ChildToParent(int32 Idx)
Definition PBDRigidClusteredParticles.h:176
const FRigidClusteredFlags & RigidClusteredFlags(int32 Idx) const
Definition PBDRigidClusteredParticles.h:217
auto & ChildToParentArray()
Definition PBDRigidClusteredParticles.h:226
auto & ExternalStrainsArray()
Definition PBDRigidClusteredParticles.h:209
const auto & ChildToParentArray() const
Definition PBDRigidClusteredParticles.h:225
Definition ParticleHandle.h:987
Definition PBDRigidParticles.h:22
Definition UniquePtr.h:107
Definition SkeletalMeshComponent.h:307
bool IsInterclusterEdge(const TPBDRigidParticleHandle< T, 3 > &Particle, const TConnectivityEdge< T > &Edge)
Definition PBDRigidClusteredParticles.h:80
TConnectivityEdge< FReal > FConnectivityEdge
Definition PBDRigidClusteredParticles.h:76
float FRealSingle
Definition Real.h:14
TArray< FConnectivityEdge > FConnectivityEdgeArray
Definition PBDRigidClusteredParticles.h:77
Definition OverriddenPropertySet.cpp:45
U16 Index
Definition radfft.cpp:71
Definition PBDRigidClusteredParticles.h:25
ClusterId()
Definition PBDRigidClusteredParticles.h:26
int32 NumChildren
Definition PBDRigidClusteredParticles.h:35
ClusterId(FPBDRigidParticleHandle *NewId, int NumChildrenIn)
Definition PBDRigidClusteredParticles.h:30
FPBDRigidParticleHandle * Id
Definition PBDRigidClusteredParticles.h:34
Definition PBDRigidClusteredParticles.h:48
bool operator==(const TPBDRigidParticleHandle< T, 3 > *OtherSibling) const
Definition PBDRigidClusteredParticles.h:65
Chaos::FRealSingle GetArea() const
Definition PBDRigidClusteredParticles.h:70
TPBDRigidParticleHandle< T, 3 > * Sibling
Definition PBDRigidClusteredParticles.h:72
TConnectivityEdge(const TConnectivityEdge &Other)
Definition PBDRigidClusteredParticles.h:59
void SetArea(Chaos::FRealSingle Area)
Definition PBDRigidClusteredParticles.h:69
TConnectivityEdge(TPBDRigidParticleHandle< T, 3 > *InSibling, const FRealSingle InStrain)
Definition PBDRigidClusteredParticles.h:54
Chaos::FRealSingle Strain
Definition PBDRigidClusteredParticles.h:74
TConnectivityEdge()
Definition PBDRigidClusteredParticles.h:49