Tracks frame timing, fixed timestep accumulation, and CPU work time.
Definition FrameTimer.hpp:21
Creates and owns graphics pipelines. Handles cleanup on destruction.
Definition PipelineFactory.hpp:23
Compiles HLSL → SPIR-V and caches VkShaderModules.
Definition ShaderLibrary.hpp:24
Definition VulkanContext.hpp:22
Definition VulkanRenderer.hpp:22
ShaderLibrary & get_shader_library()
Definition VulkanRenderer.hpp:37
vk::CommandBuffer begin_command_buffer(VulkanWindow &vw)
Definition VulkanRenderer.cpp:20
std::unique_ptr< PipelineFactory > m_pipelines
Definition VulkanRenderer.hpp:48
vk::CommandBuffer begin_frame(VulkanWindow &vw)
Definition VulkanRenderer.cpp:78
std::unique_ptr< ShaderLibrary > m_shaders
Definition VulkanRenderer.hpp:47
VkDevice m_device
Definition VulkanRenderer.hpp:42
VulkanContext & ctx
Definition VulkanRenderer.hpp:41
PipelineFactory & get_pipeline_factory()
Definition VulkanRenderer.hpp:38
void begin_render_pass(VulkanWindow &vw)
Definition VulkanRenderer.cpp:49
void set_clear_color(const std::array< float, 4 > &color)
Definition VulkanRenderer.hpp:32
std::array< float, 4 > m_clear_color
Definition VulkanRenderer.hpp:45
vk::Result end_frame(VulkanWindow &vw)
Definition VulkanRenderer.cpp:84
void reload_shaders()
Definition VulkanRenderer.cpp:126
FrameTimer & m_timer
Definition VulkanRenderer.hpp:43
void init()
Definition VulkanRenderer.cpp:13
Definition VulkanWindow.hpp:35
Definition Application.hpp:28
constexpr T g_type_max
Definition types.hpp:21