Skip to main content

WorldBoundsUpdateSystem Class Template

Updates world-space bounds for active entities. More...

Declaration

template <typename TMemberHandle> class helios::engine::scene::systems::WorldBoundsUpdateSystem<TMemberHandle> { ... }

Public Member Typedefs Index

template <typename TMemberHandle>
usingEngineRoleTag = TypedSystemRole

Runtime role tag used for system registration. More...

Public Member Functions Index

template <typename TMemberHandle>
voidupdate (UpdateContext &updateContext) noexcept

Executes one update pass over active bounds tuples. More...

Description

Updates world-space bounds for active entities.

Template Parameters
TMemberHandle

ECS member handle type used by queried components.

Definition at line 34 of file WorldBoundsUpdateSystem.ixx.

Public Member Typedefs

EngineRoleTag

template <typename TMemberHandle>
using helios::engine::scene::systems::WorldBoundsUpdateSystem< TMemberHandle >::EngineRoleTag = TypedSystemRole

Runtime role tag used for system registration.

Definition at line 41 of file WorldBoundsUpdateSystem.ixx.

Public Member Functions

update()

template <typename TMemberHandle>
void helios::engine::scene::systems::WorldBoundsUpdateSystem< TMemberHandle >::update (UpdateContext & updateContext)
inline noexcept

Executes one update pass over active bounds tuples.

For each active entity, world-space bounds are recomputed only when the world transform component is marked dirty.

Parameters
updateContext

Frame-local update context with ECS access.

Definition at line 51 of file WorldBoundsUpdateSystem.ixx.

52
53
54 for (auto [entity, boundsLocal, boundsWorld, worldTransform, active] : updateContext.view<
60 >().whereEnabled()) {
61
62 if (worldTransform->isDirty()) {
63 boundsWorld->setValue(boundsLocal->value().applyTransform(worldTransform->value()));
64 }
65
66 }
67
68 }

Reference helios::engine::scene::registerComponents.


The documentation for this class was generated from the following file:


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.