Skip to main content

systems Folder

Files Index

filehelios/engine/modules/physics/collision/systems/_module.ixx

Aggregate module for helios::engine::modules::physics::collision::systems namespace. More...

fileBoundsUpdateSystem.ixx

System for updating collider bounds based on world transforms. More...

fileCollisionStateClearSystem.ixx

System for resetting collision state components each frame. More...

fileCollisionStateResponseSystem.ixx

System for processing collision states and executing collision behaviors. More...

fileGridCollisionDetectionSystem.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.