Class ImGuiRenderer

Class Documentation

class ImGuiRenderer

Manages ImGui rendering integration with Vulkan.

ImGuiRenderer handles ImGui initialization, frame management, and rendering to a specified render target. Used by EditorModule to render the editor UI.

Public Functions

ImGuiRenderer(ResourceRegistry &resource_registry, const Window &window, const renderer::vulkan::VulkanSwapchain &swapchain)

Initializes ImGui with Vulkan backend.

Parameters:
  • window – The window for input handling.

  • swapchain – The swapchain for format information.

~ImGuiRenderer()
void begin_frame(const FrameContext &frame, const Reference<renderer::RenderTarget> &render_target)

Begins an ImGui frame.

Parameters:
  • frame – The current frame context.

  • render_target – The render target to draw ImGui to.

void end_frame(FrameContext &frame)

Ends the ImGui frame and records draw commands.

Parameters:

frame – The current frame context.

void render_subwindows()

Renders secondary windows Must be called after the main swapchain present.