|
| InternalEdgeRemovingCollector (CollideShapeCollector &inChainedCollector) |
| Constructor, configures a collector to be called with all the results that do not hit internal edges.
|
|
virtual void | Reset () override |
| If you want to reuse this collector, call Reset()
|
|
virtual void | OnBody (const Body &inBody) override |
|
virtual void | AddHit (const CollideShapeResult &inResult) override |
|
void | Flush () |
| After all hits have been added, call this function to process the delayed results.
|
|
| CollisionCollector ()=default |
| Default constructor.
|
|
template<class ResultTypeArg2 > |
| CollisionCollector (const CollisionCollector< ResultTypeArg2, TraitsType > &inRHS) |
| Constructor to initialize from another collector.
|
|
| CollisionCollector (const CollisionCollector< ResultTypeArg, TraitsType > &inRHS)=default |
|
virtual | ~CollisionCollector ()=default |
| Destructor.
|
|
void | SetContext (const TransformedShape *inContext) |
| Set by the collision detection functions to the current TransformedShape that we're colliding against before calling the AddHit function.
|
|
const TransformedShape * | GetContext () const |
|
virtual void | SetUserData (uint64 inUserData) |
| This function can be used to set some user data on the collision collector.
|
|
virtual void | AddHit (const ResultType &inResult)=0 |
| This function will be called for every hit found, it's up to the application to decide how to store the hit.
|
|
void | UpdateEarlyOutFraction (float inFraction) |
| Update the early out fraction (should be lower than before)
|
|
void | ResetEarlyOutFraction (float inFraction=TraitsType::InitialEarlyOutFraction) |
| Reset the early out fraction to a specific value.
|
|
void | ForceEarlyOut () |
| Force the collision detection algorithm to terminate as soon as possible. Call this from the AddHit function when a satisfying hit is found.
|
|
bool | ShouldEarlyOut () const |
| When true, the collector will no longer accept any additional hits and the collision detection routine should early out as soon as possible.
|
|
float | GetEarlyOutFraction () const |
| Get the current early out value.
|
|
float | GetPositiveEarlyOutFraction () const |
| Get the current early out value but make sure it's bigger than zero, this is used for shape casting as negative values are used for penetration.
|
|
Removes internal edges from collision results. Can be used to filter out 'ghost collisions'. Based on: Contact generation for meshes - Pierre Terdiman (https://www.codercorner.com/MeshContacts.pdf)