|  | ReactPhysics3D
    v0.10.2
    C++ Physics engine library | 
This class represents the broad-phase collision detection. More...
#include <include/reactphysics3d/systems/BroadPhaseSystem.h>
| Public Member Functions | |
| BroadPhaseSystem (CollisionDetectionSystem &collisionDetection, ColliderComponents &collidersComponents, TransformComponents &transformComponents, RigidBodyComponents &rigidBodyComponents) | |
| Constructor. | |
| ~BroadPhaseSystem ()=default | |
| Destructor. | |
| BroadPhaseSystem (const BroadPhaseSystem &algorithm)=delete | |
| Deleted copy-constructor. | |
| BroadPhaseSystem & | operator= (const BroadPhaseSystem &algorithm)=delete | 
| Deleted assignment operator. | |
| void | addCollider (Collider *collider, const AABB &aabb) | 
| Add a collider into the broad-phase collision detection. | |
| void | removeCollider (Collider *collider) | 
| Remove a collider from the broad-phase collision detection. | |
| void | updateCollider (Entity colliderEntity) | 
| Update the broad-phase state of a single collider. | |
| void | updateColliders () | 
| Update the broad-phase state of all the enabled colliders. | |
| void | addMovedCollider (int broadPhaseID, Collider *collider) | 
| Add a collider in the array of colliders that have moved in the last simulation step and that need to be tested again for broad-phase overlapping. | |
| void | removeMovedCollider (int broadPhaseID) | 
| Remove a collider from the array of colliders that have moved in the last simulation step and that need to be tested again for broad-phase overlapping. | |
| void | computeOverlappingPairs (MemoryManager &memoryManager, Array< Pair< int32, int32 > > &overlappingNodes) | 
| Compute all the overlapping pairs of collision shapes. | |
| Collider * | getColliderForBroadPhaseId (int broadPhaseId) const | 
| Return the collider corresponding to the broad-phase node id in parameter. | |
| bool | testOverlappingShapes (int32 shape1BroadPhaseId, int32 shape2BroadPhaseId) const | 
| Return true if the two broad-phase collision shapes are overlapping. | |
| const AABB & | getFatAABB (int broadPhaseId) const | 
| Return the fat AABB of a given broad-phase shape. | |
| void | raycast (const Ray &ray, RaycastTest &raycastTest, unsigned short raycastWithCategoryMaskBits) const | 
| Ray casting method. | |
This class represents the broad-phase collision detection.
The goal of the broad-phase collision detection is to compute the pairs of colliders that have their AABBs overlapping. Only those pairs of bodies will be tested later for collision during the narrow-phase collision detection. A dynamic AABB tree data structure is used for fast broad-phase collision detection.