systems Folder
Files Index
| file | helios/engine/modules/physics/collision/systems/_module.ixx |
|
Aggregate module for helios::engine::modules::physics::collision::systems namespace. More... | |
| file | BoundsUpdateSystem.ixx |
|
System for updating collider bounds based on world transforms. More... | |
| file | CollisionStateClearSystem.ixx |
|
System for resetting collision state components each frame. More... | |
| file | CollisionStateResponseSystem.ixx |
|
System for processing collision states and executing collision behaviors. More... | |
| file | GridCollisionDetectionSystem.ixx |
|
Spatial-partitioning based collision detection using a uniform 3D grid. More... | |
Description
helios::engine::modules::physics::collision::systems
Collision detection and response systems for the helios engine.
This namespace contains systems for spatial partitioning, collision detection, and collision response handling. The systems are designed to run in a specific order within the game loop:
1. BoundsUpdateSystem - Updates world-space AABB colliders from entity transforms. 2. GridCollisionDetectionSystem - Performs broad-phase and narrow-phase collision detection using uniform spatial partitioning. 3. CollisionStateResponseSystem - Processes collision states and issues response commands (e.g., despawn). 4. CollisionStateClearSystem - Clears collision state components at frame end (post-phase).
GridCollisionDetectionSystem
Implements grid-based spatial partitioning for efficient collision detection:
- Broadphase: Entities are inserted into grid cells based on their AABB
- Narrowphase: AABB intersection tests for entities sharing the same cell
- Layer Filtering: Uses layer masks for fine-grained collision pair control
- Hit Policy: Supports OneHit (first collision only) or All (multi-target)
CollisionStateResponseSystem
Processes collision states and executes configured behaviors:
- Reads CollisionStateComponent to determine collision response
- Issues DespawnCommand for entities with Despawn behavior
- Publishes SolidCollisionEvent / TriggerCollisionEvent for PassEvent behavior
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.