ScaleSystem.ixx File
System for applying scale transformations based on ScaleStateComponent. More...
Included Headers
#include <helios.engine.common.tags.SystemRole>
#include <helios.engine.mechanics.lifecycle.components.Active>
#include <helios.engine.modules.rendering.model.components.ModelAabbComponent>
#include <helios.engine.modules.spatial.transform.components.ScaleStateComponent>
#include <helios.engine.runtime.world.UpdateContext>
#include <helios.engine.runtime.world.GameWorld>
#include <helios.engine.ecs.GameObject>
#include <helios.engine.modules.spatial.transform.components.ComposeTransformComponent>
#include <helios.core.units.Unit>
#include <helios.math>
Namespaces Index
| namespace | helios |
| namespace | engine |
|
Main engine module aggregating core infrastructure and game systems. More... | |
| namespace | modules |
|
Domain-specific components and systems. More... | |
| namespace | spatial |
| namespace | transform |
|
Transform components and systems for spatial state management. More... | |
| namespace | systems |
|
Transform composition systems. More... | |
Classes Index
| class | ScaleSystem |
|
System that applies scaling to entities based on their ScaleStateComponent. More... | |
Description
System for applying scale transformations based on ScaleStateComponent.
File Listing
The file content with the documentation metadata removed is:
29export namespace helios::engine::modules::spatial::transform::systems {
44 class ScaleSystem {
59 void update(helios::engine::runtime::world::UpdateContext& updateContext) noexcept {
82 auto scale = helios::math::vec3f{
83 wscale[0] != 0 && cscale[0] != 0 ? helios::core::units::from(wscale[0], unit) / cscale[0] : currentScale[0],
84 wscale[1] != 0 && cscale[1] != 0 ? helios::core::units::from(wscale[1], unit) / cscale[1] : currentScale[1],
85 wscale[2] != 0 && cscale[2] != 0 ? helios::core::units::from(wscale[2], unit) / cscale[2] : currentScale[2]
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.