Class EditorModule

Inheritance Relationships

Base Type

  • public TaggedModule< Tag< ModuleTags::FrameLifecycle, ModuleTags::PostUpdate, ModuleTags::GuiUpdate, ModuleTags::Event >, SystemOrchestrator, ResourcesModule >

Class Documentation

class EditorModule : public TaggedModule<Tag<ModuleTags::FrameLifecycle, ModuleTags::PostUpdate, ModuleTags::GuiUpdate, ModuleTags::Event>, SystemOrchestrator, ResourcesModule>

Top-level module for the editor application.

EditorModule orchestrates the editor UI and scene rendering by combining:

Unlike RuntimeModule which renders directly to the swapchain, EditorModule renders the scene to a viewport texture and composites it with the editor UI.

Public Functions

EditorModule(ModuleStack &stack, Project &project, renderer::vulkan::VulkanContext &context, renderer::vulkan::VulkanSwapchain &swapchain, const Window &window)
void begin_frame(FrameContext &frame) override
void gui_update(FrameContext &frame) override
void post_update(FrameContext &frame) override
void end_frame(FrameContext &frame) override
void on_event(Event &event) override