From cbf11abcf57cc0c2f1b99e42e49c042970bfa7da Mon Sep 17 00:00:00 2001 From: antopilo Date: Sat, 19 Oct 2024 15:04:32 -0400 Subject: [PATCH] Fixed scene leaking --- Nuake/Engine.cpp | 2 +- Nuake/src/Resource/UI.cpp | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/Nuake/Engine.cpp b/Nuake/Engine.cpp index 5dec3ecd..590cd4d8 100644 --- a/Nuake/Engine.cpp +++ b/Nuake/Engine.cpp @@ -40,7 +40,7 @@ namespace Nuake void Engine::Init() { - Window::Get()->OnWindowSetScene().AddStatic(&Engine::OnWindowSetScene); + //Window::Get()->OnWindowSetScene().AddStatic(&Engine::OnWindowSetScene); ScriptingEngineNet::Get().OnGameAssemblyLoaded().AddStatic(&Engine::OnScriptingEngineGameAssemblyLoaded); diff --git a/Nuake/src/Resource/UI.cpp b/Nuake/src/Resource/UI.cpp index d2c44f64..fa98b1f9 100644 --- a/Nuake/src/Resource/UI.cpp +++ b/Nuake/src/Resource/UI.cpp @@ -16,8 +16,9 @@ UIResource::UIResource(const std::string& path) : filePath(path) { const Vector2 defaultSize = { 1280, 720 }; - framebuffer = CreateRef(true, defaultSize); - framebuffer->SetTexture(CreateRef(defaultSize, GL_RGBA, GL_RGBA, GL_UNSIGNED_BYTE)); + framebuffer = CreateRef(false, defaultSize); + framebuffer->SetTexture(CreateRef(defaultSize, GL_RGBA)); + framebuffer->SetTexture(CreateRef(defaultSize, GL_DEPTH_COMPONENT), 0x8D00); // Depth if (!inputManager) { @@ -45,9 +46,9 @@ void UIResource::Tick() void UIResource::Draw() { + RenderCommand::SetClearColor({ 0, 0, 0, 1.0f }); framebuffer->Bind(); { - RenderCommand::SetClearColor({ 0, 0, 0, 0 }); RenderCommand::Clear(); if (canvas != nullptr) @@ -82,6 +83,11 @@ void UIResource::Reload() } } +void Nuake::UIResource::SetMousePosition(const Vector2 & mousePos) +{ + canvas->SetOverrideMousePosition(mousePos); +} + Ref UIResource::GetOutputTexture() const { return framebuffer->GetTexture();