SceneRenderingSystem.ixx File
System for rendering scenes through their associated viewports. More...
Included Headers
#include <cassert>
#include <vector>
#include <helios.engine.common.tags.SystemRole>
#include <helios.engine.modules.scene.components.SceneNodeComponent>
#include <helios.engine.modules.scene.types.SceneToViewportMap>
#include <helios.rendering.RenderPassFactory>
#include <helios.engine.mechanics.lifecycle.components.Active>
#include <helios.engine.runtime.world.UpdateContext>
#include <helios.engine.modules.spatial.transform.components.ComposeTransformComponent>
#include <helios.engine.runtime.world.GameWorld>
#include <helios.rendering.RenderingDevice>
#include <helios.engine.runtime.world.Session>
#include <helios.scene.Scene>
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 | scene |
|
Scene graph integration for game entities. More... | |
| namespace | systems |
|
Scene graph synchronization and rendering systems. More... | |
Classes Index
| class | SceneRenderingSystem |
|
Renders scenes through their configured viewports. More... | |
Description
System for rendering scenes through their associated viewports.
File Listing
The file content with the documentation metadata removed is:
32using namespace helios::engine::modules::scene::types;
36export namespace helios::engine::modules::scene::systems {
52 class SceneRenderingSystem {
57 helios::rendering::RenderingDevice& renderingDevice_;
62 helios::engine::modules::scene::types::SceneToViewportMap& sceneToViewportMap_;
74 explicit SceneRenderingSystem(
75 helios::rendering::RenderingDevice& renderingDevice,
76 helios::engine::modules::scene::types::SceneToViewportMap& sceneToViewportMap
89 void update(helios::engine::runtime::world::UpdateContext& updateContext) noexcept {
98 auto scene = sceneToViewportMap_.scene(viewportId);
99 if (!scene) {
103 auto viewport = sceneToViewportMap_.viewport(scene->sceneId(), viewportId);
108 const auto& snapshot = scene->createSnapshot(*viewport);
110 auto renderPass = helios::rendering::RenderPassFactory::getInstance()
111 .buildRenderPass(*snapshot);
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.