![]() |
Lysa Nodes
0.0
Lysa Nodes — Scene Graph for the Lysa Engine
|
lysa::ContextConfiguration and lysa::Lysa Every Lysa application is anchored by a lysa::ContextConfiguration aggregate and a lysa::Lysa instance that consumes it and initialises the graphics device, virtual filesystem, and event bus.
In Main.cpp the configuration is declared at file scope so it can be mutated in lysaMain (to pick the graphics backend) before the engine is constructed:
ContextConfiguration | Field | Default | Effect |
|---|---|---|
backendConfiguration.backend | VULKAN | Graphics API (VULKAN or DIRECTX) |
deltaTime | 1.0/60.0 | Fixed timestep for PHYSICS_PROCESS events |
framesInFlight | 2 | Number of GPU frames in flight (double-buffering) |
maxShadowMapsPerScene | 20 | Upper bound on active shadow maps |
resourcesCapacity | see below | GPU pool sizes for meshes, images, materials |
After lysa::Lysa is constructed the singleton is reachable everywhere via lysa::ctx():
lysa::Lysa must be the first member of the Application class. C++ initialises members in declaration order, so placing lysa first guarantees the engine context exists before the window and scene are constructed:
lysaMain uses if constexpr so the DirectX branch is compiled only on Windows.Next : Rendering window