ParallelBruteForceBroadPhase
This component is a parallel implementation of BruteForceBroadPhase using a global thread pool. It means the result of a simulation with BruteForceBroadPhase or with ParallelBruteForceBroadPhase is expected to be equal. ParallelBruteForceBroadPhase is the most efficient compared to BruteForceBroadPhase when there is a lot of objects in the scene.
Parallel version of the collision detection using extensive pair-wise tests performed concurrently.
Target: MultiThreading
namespace: multithreading::component::collision::detection::algorithm
parents:
- BruteForceBroadPhase
Data
| Name | Description | Default value |
|---|---|---|
| name | object name | unnamed |
| printLog | if true, emits extra messages at runtime. | 0 |
| tags | list of the subsets the object belongs to | |
| bbox | this object bounding box | |
| componentState | The state of the component among (Dirty, Valid, Undefined, Loading, Invalid). | Undefined |
| listening | if true, handle the events, otherwise ignore the events | 0 |
| box | if not empty, objects that do not intersect this bounding-box will be ignored | |
| nbThreads | If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number. | 0 |
| taskSchedulerType | Type of task scheduler to use. | _default |
Links
| Name | Description | Destination type name |
|---|---|---|
| context | Graph Node containing this object (or BaseContext::getDefault() if no graph is used) | BaseContext |
| slaves | Sub-objects used internally by this object | BaseObject |
| master | nullptr for regular objects, or master object for which this object is one sub-objects | BaseObject |