Class EditorModule

Inheritance Relationships

Base Type

  • public TaggedModule< Tag< ModuleTags::FrameLifecycle, ModuleTags::PostUpdate, ModuleTags::GuiUpdate >, InputManager, ecs::Registry, SystemOrchestrator, ResourcesModule >

Class Documentation

class EditorModule : public TaggedModule<Tag<ModuleTags::FrameLifecycle, ModuleTags::PostUpdate, ModuleTags::GuiUpdate>, InputManager, ecs::Registry, 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, Window &window, entt::dispatcher &engine_dispatcher, entt::dispatcher &input_dispatcher)
void begin_frame(FrameContext &frame) override
void gui_update(FrameContext &frame) override
void post_update(FrameContext &frame) override
void end_frame(FrameContext &frame) override