From 7a2218824d51ef5df7f6cafda4b5ceed1a3236e3 Mon Sep 17 00:00:00 2001 From: antopilo Date: Sat, 25 Jan 2025 19:19:01 -0500 Subject: [PATCH] Added debug draw event --- Editor/src/Windows/EditorInterface.cpp | 13 ++++++++++--- Editor/src/Windows/EditorInterface.h | 1 + Nuake/src/Rendering/Vulkan/SceneRenderPipeline.cpp | 2 +- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/Editor/src/Windows/EditorInterface.cpp b/Editor/src/Windows/EditorInterface.cpp index 506a3b42..4e27cc91 100644 --- a/Editor/src/Windows/EditorInterface.cpp +++ b/Editor/src/Windows/EditorInterface.cpp @@ -63,6 +63,9 @@ #include #include #include + +#include "src/Rendering/Vulkan/SceneRenderPipeline.h" + namespace Nuake { ImFont* normalFont; @@ -589,7 +592,6 @@ namespace Nuake { ImGuiWindowFlags window_flags = ImGuiWindowFlags_MenuBar | ImGuiWindowFlags_NoDocking; static ImGuiDockNodeFlags dockspace_flags = ImGuiDockNodeFlags_AutoHideTabBar; - //ImGuiViewport* viewport = ImGui::GetMainViewport(); //ImGui::SetNextWindowPos(viewport->Pos); //ImGui::SetNextWindowSize(viewport->Size); @@ -627,9 +629,7 @@ namespace Nuake { framebuffer->QueueResize(viewportPanelSize * Engine::GetProject()->Settings.ResolutionScale); Ref texture = framebuffer->GetTexture(); - //auto& pipeline = VkRenderer::Get().GetRenderPipeline(); VkDescriptorSet textureDesc = VkRenderer::Get().DrawImage->GetImGuiDescriptorSet(); - if (SelectedViewport == 1) { //pipeline.GetRenderPass("Shadow").GetDepthAttachment().Image->TransitionLayout(VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL); @@ -2438,6 +2438,13 @@ namespace Nuake { void EditorInterface::OnSceneLoaded(Ref scene) { Logger::Log("On Scene loaded"); + + VkRenderer::Get().SceneRenderer->sceneRenderPipeline->OnDebugDraw().AddRaw(this, &EditorInterface::OnDebugDraw); + } + + void EditorInterface::OnDebugDraw() + { + Logger::Log("On debug draw"); } bool isLoadingProject = false; diff --git a/Editor/src/Windows/EditorInterface.h b/Editor/src/Windows/EditorInterface.h index f51bdd48..db754e7c 100644 --- a/Editor/src/Windows/EditorInterface.h +++ b/Editor/src/Windows/EditorInterface.h @@ -103,6 +103,7 @@ namespace Nuake void EndMenubar(); void OnSceneLoaded(Ref scene); + void OnDebugDraw(); void SetStatusMessage(const std::string& msg, const Color& color = Color(0.08f, 0.08f, 0.08f, 1.0f)) { m_StatusMessage = msg; m_StatusBarColor = color; } void DrawViewport(); diff --git a/Nuake/src/Rendering/Vulkan/SceneRenderPipeline.cpp b/Nuake/src/Rendering/Vulkan/SceneRenderPipeline.cpp index 0ed6286e..2edc1d40 100644 --- a/Nuake/src/Rendering/Vulkan/SceneRenderPipeline.cpp +++ b/Nuake/src/Rendering/Vulkan/SceneRenderPipeline.cpp @@ -281,7 +281,7 @@ void SceneRenderPipeline::Render(PassRenderContext& ctx) // Debug drawing // Get delegate - + OnDebugDraw().Broadcast(); } Ref SceneRenderPipeline::ResizeImage(Ref image, const Vector2& size)