MotionIntegrationSystem Class Template
Updates local position by applying local velocity each frame. More...
Declaration
template <typename TMemberHandle>
class helios::physics::motion::systems::MotionIntegrationSystem<TMemberHandle> { ... }
Public Member Typedefs Index
template <typename TMemberHandle> | |
| using | EngineRoleTag = TypedSystemRole |
Public Member Functions Index
template <typename TMemberHandle> | |
| void | update (UpdateContext &updateContext) |
|
Applies Euler integration to all active entities with position and velocity. More... | |
Description
Updates local position by applying local velocity each frame.
- Template Parameters
-
TMemberHandle ECS handle type.
Definition at line 35 of file MotionIntegrationSystem.ixx.
Public Member Typedefs
EngineRoleTag
template <typename TMemberHandle>
|
Definition at line 40 of file MotionIntegrationSystem.ixx.
40 using EngineRoleTag = TypedSystemRole;
Public Member Functions
update()
template <typename TMemberHandle>
| inline |
Applies Euler integration to all active entities with position and velocity.
- Parameters
-
updateContext Frame update context containing view access and delta time.
Definition at line 48 of file MotionIntegrationSystem.ixx.
49
50 for (auto[
51 entity,
52 localVelocity,
53 localPosition,
54 active
55 ]: updateContext.view<
56 TMemberHandle,
58 Position3DComponent<TMemberHandle, Local>,
59 Active<TMemberHandle>
60 >().whereEnabled()) {
61
62
63 localPosition->setValue(
64 localPosition->value() + localVelocity->value() * updateContext.deltaTime()
65 );
66
67
68 }
69
70 }
The documentation for this class was generated from the following file:
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.