Collection of flags describing the actions to take for a collision pair. More...
#include <PxFiltering.h>
Public Types | |
enum | Enum { eSOLVE_CONTACT = (1<<0), eMODIFY_CONTACTS = (1<<1), eNOTIFY_TOUCH_FOUND = (1<<2), eNOTIFY_TOUCH_PERSISTS = (1<<3), eNOTIFY_TOUCH_LOST = (1<<4), eNOTIFY_TOUCH_CCD = (1<<5), eNOTIFY_THRESHOLD_FORCE_FOUND = (1<<6), eNOTIFY_THRESHOLD_FORCE_PERSISTS = (1<<7), eNOTIFY_THRESHOLD_FORCE_LOST = (1<<8), eNOTIFY_CONTACT_POINTS = (1<<9), eDETECT_DISCRETE_CONTACT = (1<<10), eDETECT_CCD_CONTACT = (1<<11), ePRE_SOLVER_VELOCITY = (1<<12), ePOST_SOLVER_VELOCITY = (1<<13), eCONTACT_EVENT_POSE = (1<<14), eNEXT_FREE = (1<<15), eRESOLVE_CONTACTS = eSOLVE_CONTACT | eDETECT_DISCRETE_CONTACT, eCCD_LINEAR = eSOLVE_CONTACT | eDETECT_CCD_CONTACT, eCONTACT_DEFAULT = eSOLVE_CONTACT | eDETECT_DISCRETE_CONTACT, eTRIGGER_DEFAULT = eNOTIFY_TOUCH_FOUND | eNOTIFY_TOUCH_LOST | eDETECT_DISCRETE_CONTACT } |
Collection of flags describing the actions to take for a collision pair.
enum PxPairFlag::Enum |
Enumerator | |
---|---|
eSOLVE_CONTACT |
Process the contacts of this collision pair in the dynamics solver.
|
eMODIFY_CONTACTS |
Call contact modification callback for this collision pair.
|
eNOTIFY_TOUCH_FOUND |
Call contact report callback or trigger callback when this collision pair starts to be in contact. If one of the two collision objects is a trigger shape (see PxShapeFlag::eTRIGGER_SHAPE) then the trigger callback will get called as soon as the other object enters the trigger volume. If none of the two collision objects is a trigger shape then the contact report callback will get called when the actors of this collision pair start to be in contact.
|
eNOTIFY_TOUCH_PERSISTS |
Call contact report callback while this collision pair is in contact. If none of the two collision objects is a trigger shape then the contact report callback will get called while the actors of this collision pair are in contact.
|
eNOTIFY_TOUCH_LOST |
Call contact report callback or trigger callback when this collision pair stops to be in contact. If one of the two collision objects is a trigger shape (see PxShapeFlag::eTRIGGER_SHAPE) then the trigger callback will get called as soon as the other object leaves the trigger volume. If none of the two collision objects is a trigger shape then the contact report callback will get called when the actors of this collision pair stop to be in contact.
|
eNOTIFY_TOUCH_CCD |
Call contact report callback when this collision pair is in contact during CCD passes. If CCD with multiple passes is enabled, then a fast moving object might bounce on and off the same object multiple times. Hence, the same pair might be in contact multiple times during a simulation step. This flag will make sure that all the detected collision during CCD will get reported. For performance reasons, the system can not always tell whether the contact pair lost touch in one of the previous CCD passes and thus can also not always tell whether the contact is new or has persisted. eNOTIFY_TOUCH_CCD just reports when the two collision objects were detected as being in contact during a CCD pass.
|
eNOTIFY_THRESHOLD_FORCE_FOUND |
Call contact report callback when the contact force between the actors of this collision pair exceeds one of the actor-defined force thresholds.
|
eNOTIFY_THRESHOLD_FORCE_PERSISTS |
Call contact report callback when the contact force between the actors of this collision pair continues to exceed one of the actor-defined force thresholds.
|
eNOTIFY_THRESHOLD_FORCE_LOST |
Call contact report callback when the contact force between the actors of this collision pair falls below one of the actor-defined force thresholds (includes the case where this collision pair stops being in contact).
|
eNOTIFY_CONTACT_POINTS |
Provide contact points in contact reports for this collision pair.
|
eDETECT_DISCRETE_CONTACT |
This flag is used to indicate whether this pair generates discrete collision detection contacts.
|
eDETECT_CCD_CONTACT |
This flag is used to indicate whether this pair generates CCD contacts.
|
ePRE_SOLVER_VELOCITY |
Provide pre solver velocities in contact reports for this collision pair. If the collision pair has contact reports enabled, the velocities of the rigid bodies before contacts have been solved will be provided in the contact report callback unless the pair lost touch in which case no data will be provided.
|
ePOST_SOLVER_VELOCITY |
Provide post solver velocities in contact reports for this collision pair. If the collision pair has contact reports enabled, the velocities of the rigid bodies after contacts have been solved will be provided in the contact report callback unless the pair lost touch in which case no data will be provided. |
eCONTACT_EVENT_POSE |
Provide rigid body poses in contact reports for this collision pair. If the collision pair has contact reports enabled, the rigid body poses at the contact event will be provided in the contact report callback unless the pair lost touch in which case no data will be provided.
|
eNEXT_FREE |
For internal use only. |
eRESOLVE_CONTACTS |
Provides default flag for resolving contacts. |
eCCD_LINEAR |
Provided default flag to enable performing linear CCD sweeps and response for this collision pair. |
eCONTACT_DEFAULT |
Provided default flag to do simple contact processing for this collision pair. |
eTRIGGER_DEFAULT |
Provided default flag to get commonly used trigger behavior for this collision pair. |