static std::optional< Entity > getPrimaryCamera(Registry ®istry)
Find the primary camera entity in the registry.
Definition engine.cpp:156
Renderer m_renderer
Definition engine.hpp:78
InputSystem & inputManager()
Definition engine.hpp:52
void run()
Start the main game loop.
Definition engine.cpp:129
void init()
Initialize all engine subsystems.
Definition engine.cpp:40
~Engine()
Definition engine.cpp:33
Window m_window
Definition engine.hpp:76
PhysicsSystem & physicsSystem()
Definition engine.hpp:56
static Engine & get()
Get the singleton engine instance.
Definition engine.hpp:26
Engine & operator=(const Engine &)=delete
const PhysicsSystem & physicsSystem() const
Definition engine.hpp:54
const InputSystem & inputManager() const
Definition engine.hpp:50
const Window & window() const
Definition engine.hpp:41
Renderer & renderer()
Definition engine.hpp:47
const Renderer & renderer() const
Definition engine.hpp:45
PhysicsSystem m_physicsSystem
Definition engine.hpp:83
Window & window()
Definition engine.hpp:43
Engine()
Definition engine.cpp:24
InputSystem m_inputSystem
Definition engine.hpp:81
Engine(const Engine &)=delete
Handles physics simulation including gravity and N-body dynamics.
Definition physics_system.hpp:10
Manages entities and their components in the ECS.
Definition registry.hpp:16
Handles all rendering operations and graphics state.
Definition renderer.hpp:17
Manages window creation, events, and GLFW context.
Definition window.hpp:13