13 template <
typename T,
int d>
20 template <
typename T,
int d>
24 class FCollisionContext;
26 class FImplicitObject;
27 class FPBDCollisionConstraint;
28 class FTriangleMeshImplicitObject;
72 UE_DEPRECATED(5.4, "
No longer supported")
91 const
FReal CullDistance,
97 inline void CHAOS_API ConstructConstraints(
TGeometryParticleHandle<
FReal, 3>* Particle0,
TGeometryParticleHandle<
FReal, 3>* Particle1, const
FImplicitObject*
Implicit0, const
FPerShapeData* Shape0, const
FBVHParticles*
Simplicial0, const
FImplicitObject*
Implicit1, const
FPerShapeData* Shape1, const
FBVHParticles*
Simplicial1, const
FRigidTransform3&
ParticleWorldTransform0, const
FRigidTransform3&
Transform0, const
FRigidTransform3&
ParticleWorldTransform1, const
FRigidTransform3&
Transform1, const
FReal CullDistance, const
FReal Dt, const
bool bEnableSweep, const
FCollisionContext&
Context) {}
101 inline void CHAOS_API ConstructConstraints(
TGeometryParticleHandle<
FReal, 3>* Particle0,
TGeometryParticleHandle<
FReal, 3>* Particle1, const
FImplicitObject*
Implicit0, const
FPerShapeData* Shape0, const
FBVHParticles*
Simplicial0, const
FImplicitObject*
Implicit1, const
FPerShapeData* Shape1, const
FBVHParticles*
Simplicial1, const
FRigidTransform3&
ParticleWorldTransform0, const
FRigidTransform3&
Transform0, const
FRigidTransform3&
ParticleWorldTransform1, const
FRigidTransform3&
Transform1, const
FReal CullDistance, const
FReal Dt, const
FCollisionContext&
Context) {}
103 template<ECollisionUpdateType UpdateType>
104 UE_DEPRECATED(5.3,
"Use UpdateConstraint, but call Constraint.SetShapeWorldTransform first (see implementation)")
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#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 BVHParticles.h:24
Definition CollisionContext.h:83
Definition ImplicitObject.h:111
A contact constraint.
Definition PBDCollisionConstraint.h:225
Definition ShapeInstance.h:36
Definition ParticleHandle.h:436
EImplicitObjectType GetImplicitCollisionType(const FGeometryParticleHandle *Particle, const FImplicitObject *Implicit)
Definition CollisionResolution.cpp:1375
EContactShapesType CalculateShapePairType(const FGeometryParticleHandle *Particle0, const FImplicitObject *Implicit0, const FGeometryParticleHandle *Particle1, const FImplicitObject *Implicit1, bool &bOutSwap)
Determine the shape pair type for use in UpdateConstraints.
Definition CollisionResolution.cpp:1168
void UpdateConstraintFromGeometry(FPBDCollisionConstraint &Constraint, const FRigidTransform3 &ParticleWorldTransform0, const FRigidTransform3 &ParticleWorldTransform1, const FReal Dt)
Definition CollisionResolution.cpp:1381
void CHAOS_API ConstructConstraints(TGeometryParticleHandle< FReal, 3 > *Particle0, TGeometryParticleHandle< FReal, 3 > *Particle1, const FImplicitObject *Implicit0, const FPerShapeData *Shape0, const FBVHParticles *Simplicial0, const int32 ImplicitID0, const FImplicitObject *Implicit1, const FPerShapeData *Shape1, const FBVHParticles *Simplicial1, const int32 ImplicitID1, const FRigidTransform3 &ParticleWorldTransform0, const FRigidTransform3 &Transform0, const FRigidTransform3 &ParticleWorldTransform1, const FRigidTransform3 &Transform1, const FReal CullDistance, const FReal Dt, const bool bEnableSweep, const FCollisionContext &Context)
Definition CollisionResolution.h:76
void UpdateConstraint(FPBDCollisionConstraint &Constraint, const FRigidTransform3 &ShapeWorldTransform0, const FRigidTransform3 &ShapeWorldTransform1, const FReal Dt)
Update the contact manifold on the constraint.
Definition CollisionResolution.cpp:1158
bool UpdateConstraintSwept(FPBDCollisionConstraint &Constraint, const FRigidTransform3 &ShapeStartWorldTransform0, const FRigidTransform3 &ShapeStartWorldTransform1, const FReal Dt)
Update the contact manifold on the constraint.
Definition CollisionResolution.cpp:1163
bool ShouldUseCCD(const FGeometryParticleHandle *Particle0, const FVec3 &DeltaX0, const FGeometryParticleHandle *Particle1, const FVec3 &DeltaX1, FVec3 &Dir, FReal &Length)
Whether CCD should be enabled for a contact given the current particle velocities etc.
Definition CollisionResolution.cpp:111
void CHAOS_API ResetChaosCollisionCounters()
Definition CollisionResolution.h:73
void UpdateLevelsetLevelsetConstraint(const FRigidTransform3 &WorldTransform0, const FRigidTransform3 &WorldTransform1, const FReal Dt, FPBDCollisionConstraint &Constraint)
Definition CollisionResolution.cpp:868
Definition SkeletalMeshComponent.h:307
TRigidTransform< FReal, 3 > FRigidTransform3
Definition Core.h:22
uint8 EImplicitObjectType
Definition ImplicitObjectType.h:41
FRealDouble FReal
Definition Real.h:22
EContactShapesType
Definition CollisionResolutionTypes.h:55
TVector< FReal, 3 > FVec3
Definition Core.h:17
TGeometryParticleHandle< FReal, 3 > FGeometryParticleHandle
Definition ParticleHandleFwd.h:24