Navigation
API > API/Runtime > API/Runtime/Chaos > API/Runtime/Chaos/Chaos > API/Runtime/Chaos/Chaos/Collision
Inheritance Hierarchy
- FParticlePairMidPhase
- FGenericParticlePairMidPhase
References
Module | Chaos |
Header | /Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/Collision/ParticlePairMidPhase.h |
Include | #include "Chaos/Collision/ParticlePairMidPhase.h" |
Syntax
class FGenericParticlePairMidPhase : public Chaos::FParticlePairMidPhase
Remarks
A midphase for a particle pair where one or both have a large number of collisions shapes, or a non-flat hierarchy of shapes. This is the general-purpose collision path and does not cache as much data as the FShapePairParticlePairMidPhase and must visit the geometry hierarchy on both shapes every time we detect collisions. It must also rerun the collision filters on overlapping pairs, among other things. It does, howver, take advantage of the BVH held in the root ImplicitObjectUnion if there is one, so it can be much faster the the FShapePairParticlePairMidPhase when the set of potentially colliding pairs is very large.
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
void | WakeCollisionsImpl
(
const int32 SleepEpoch, |
Reactivate the constraint SleepEpoch The tick on which the particle went to sleep. Only constraints that were active when the particle went to sleep should be reactivated. |
Overridden from FParticlePairMidPhase
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | Build the list of potentially colliding shape pairs. This is all the shape pairs in the partilces' shapes arrays that pass the collision filter. | |
![]() ![]() |
FPBDCollisionConstraint * | FindOrCreateConstraint
(
FGeometryParticleHandle* InParticle0, |
Callback from the narrow phase to create a collision constraint for this particle pair. We should never be asked for a collision for a different particle pair, but the implicit objects may be children of the root shape. |
![]() ![]() |
int32 | GenerateCollisionsImpl
(
const FReal CullDistance, |
|
![]() ![]() |
void | InjectCollisionImpl
(
const FPBDCollisionConstraint& Constraint, |
|
![]() ![]() |
void | ResetImpl () |
|
![]() ![]() |
void | WakeCollisionsImpl
(
const int32 CurrentEpoch |