Skip to main content

helios::engine

Runtime and integration layer for the helios C++23 engine modules.

Overview

helios::engine provides the core runtime, world orchestration, messaging, state, rendering abstractions, platform contracts, and utility infrastructure used by the split helios repositories.

The former monorepo thorstensuckow/helios is kept as a legacy reference. Active development happens in the split repositories.

Features

  • Phase/pass based game loop orchestration
  • Typed command buffers and command-handler routing
  • Type-indexed event buses for pass, phase, and frame communication
  • Resource and manager registries for runtime services
  • Generic state-management utilities
  • Engine-level rendering, scene, platform, spatial, input, tooling, and utility modules

Module surface

AreaPublic modules / APIs
Runtimehelios.engine.runtime, GameLoop, UpdateContext, GameWorld, ResourceRegistry
MessagingTypedCommandBuffer, CommandHandlerRegistry, GameLoopEventBus
StateStateManager, StateCommand, state listeners, state-to-ID maps
Renderinghelios.engine.rendering, render targets, viewports, meshes, shaders, materials
Platformhelios.engine.platform, environment/window/lifecycle contracts
Scene/spatialhelios.engine.scene, helios.engine.spatial
Utilitieshelios.engine.core, helios.engine.input, helios.engine.util, helios.engine.tooling

Usage

C++ module

import helios.engine;

CMake

Build and install:

cmake -S . -B build -DHELIOS_ENGINE_ENABLE_PACKAGE=ON -DCMAKE_INSTALL_PREFIX="$PWD/install"
cmake --build build
cmake --install build

Consume from another project:

find_package(helios-engine CONFIG REQUIRED)
target_link_libraries(your_target PRIVATE helios::engine)

Configure a consumer against an installed prefix:

cmake -S . -B build -DCMAKE_PREFIX_PATH="/path/to/helios-prefix"
cmake --build build

Development

Run the regular CMake build from the repository root:

cmake -S . -B build
cmake --build build