11#ifndef WITH_TODO_COLLISION_DISABLE
12#define WITH_TODO_COLLISION_DISABLE 0
55 : StorageDataProducer(nullptr)
57 StorageDataProducer = GetNewStorageData();
127 StorageDataQueue.Enqueue(StorageDataProducer);
128 StorageDataProducer = GetNewStorageData();
150 UE_DEPRECATED(5.2,
"The physics thread uses the ParticleHandle API. See AddIgnoreCollisions")
152 UE_DEPRECATED(5.2,
"The physics thread uses the ParticleHandle API. See RemoveIgnoreCollisions")
167 FIgnoreEntry() =
delete;
177 FStorageData* GetNewStorageData()
186 return StorageDataBackingBuffer.Last().Get();
203 FStorageData* StorageDataProducer;
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define ensure( InExpression)
Definition AssertionMacros.h:464
@ INDEX_NONE
Definition CoreMiscDefines.h:150
#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
Definition CollisionConstraintFlags.h:33
void AddIgnoreCollisionsFor(FHandleID Body0, FHandleID Body1)
Definition CollisionConstraintFlags.h:151
TSet< FUniqueIdx > FDeactivationSet
Definition CollisionConstraintFlags.h:36
TMap< FHandleID, TArray< FHandleID > > FPendingMap
Definition CollisionConstraintFlags.h:38
CHAOS_API bool IgnoresCollision(FHandleID Body0, FHandleID Body1) const
Definition CollisionConstraintFlags.cpp:20
CHAOS_API void AddIgnoreCollisions(FGeometryParticleHandle *Particle0, FGeometryParticleHandle *Particle1)
Definition CollisionConstraintFlags.cpp:111
CHAOS_API int32 NumIgnoredCollision(FHandleID Body0) const
Definition CollisionConstraintFlags.cpp:35
CHAOS_API void PopStorageData_Internal(int32 ExternalTimestamp)
Definition CollisionConstraintFlags.cpp:176
FDeactivationSet & GetPendingDeactivationsForGameThread(int32 ExternalTimestamp)
Definition CollisionConstraintFlags.h:108
CHAOS_API bool ContainsHandle(FHandleID Body0) const
Definition CollisionConstraintFlags.cpp:15
FIgnoreCollisionManager()
Definition CollisionConstraintFlags.h:54
CHAOS_API void RemoveIgnoreCollisions(FGeometryParticleHandle *Particle0, FGeometryParticleHandle *Particle1)
Definition CollisionConstraintFlags.cpp:137
CHAOS_API void ProcessPendingQueues(FPBDRigidsSolver &Solver)
Definition CollisionConstraintFlags.cpp:211
int32 RemoveIgnoreCollisionsFor(FHandleID Body0, FHandleID Body1)
Definition CollisionConstraintFlags.h:153
FUniqueIdx FHandleID
Definition CollisionConstraintFlags.h:35
FPendingMap & GetPendingActivationsForGameThread(int32 ExternalTimestamp)
Definition CollisionConstraintFlags.h:94
void PushProducerStorageData_External(int32 ExternalTimestamp)
Definition CollisionConstraintFlags.h:122
Definition PBDRigidsSolver.h:84
Definition ParticleHandle.h:436
Definition ParticleHandle.h:987
Definition UnrealString.h.inl:34
Definition SpscQueue.h:18
Definition SkeletalMeshComponent.h:307
ECollisionConstraintFlags
Flags for user-control over per-particle collision behaviour.
Definition CollisionConstraintFlags.h:22
@ CCF_SmoothEdgeCollisions
@ CCF_BroadPhaseIgnoreCollisions
Definition CollisionConstraintFlags.h:41
int32 ExternalTimestamp
Definition CollisionConstraintFlags.h:44
FPendingMap PendingActivations
Definition CollisionConstraintFlags.h:42
void Reset()
Definition CollisionConstraintFlags.h:46
FDeactivationSet PendingDeactivations
Definition CollisionConstraintFlags.h:43
Definition GeometryParticlesfwd.h:87