Class Engine

Inheritance Relationships

Base Types

Class Documentation

class Engine : public Application, public portal::WindowEventConsumer

Main engine application class.

Engine initializes and owns the core subsystems: Vulkan context, window, swapchain, and ECS registry. Supports both runtime and editor modes.

Public Functions

explicit Engine(const Reference<Project> &project, const ApplicationProperties &properties)

Constructs the engine.

Parameters:
  • project

  • properties – Application configuration.

~Engine() override
void prepare() override

Initializes engine subsystems and modules.

void process_events() override

Processes window and input events.

virtual void on_resize(WindowExtent extent) override
inline virtual void on_focus(bool) override
virtual void on_close() override
inline EngineContext &get_engine_context() const

Protected Functions

ProjectSettings &get_settings() const override