From eb4702348d2187a533abbdcca1624995a3abdbc1 Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Wed, 23 Jul 2025 18:16:51 +0200 Subject: [PATCH] Properly clean up resources --- .../src/d3drm/backends/opengles3/renderer.cpp | 16 +++++----------- miniwin/src/internal/d3drmrenderer_opengles3.h | 2 +- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/miniwin/src/d3drm/backends/opengles3/renderer.cpp b/miniwin/src/d3drm/backends/opengles3/renderer.cpp index cc4b4079..564a28f6 100644 --- a/miniwin/src/d3drm/backends/opengles3/renderer.cpp +++ b/miniwin/src/d3drm/backends/opengles3/renderer.cpp @@ -365,21 +365,15 @@ OpenGLES3Renderer::OpenGLES3Renderer( OpenGLES3Renderer::~OpenGLES3Renderer() { SDL_DestroySurface(m_renderedImage); + glDeleteTextures(1, &m_dummyTexture); glDeleteProgram(m_shaderProgram); - - if (m_colorTarget) { - glDeleteRenderbuffers(1, &m_colorTarget); - } - if (m_resolveColor) { + glDeleteRenderbuffers(1, &m_colorTarget); + glDeleteRenderbuffers(1, &m_depthTarget); + glDeleteFramebuffers(1, &m_fbo); + if (m_msaa > 1) { glDeleteRenderbuffers(1, &m_resolveColor); - } - if (m_depthTarget) { - glDeleteRenderbuffers(1, &m_depthTarget); - } - if (m_depthTarget) { glDeleteFramebuffers(1, &m_resolveFBO); } - glDeleteFramebuffers(1, &m_fbo); SDL_GL_DestroyContext(m_context); } diff --git a/miniwin/src/internal/d3drmrenderer_opengles3.h b/miniwin/src/internal/d3drmrenderer_opengles3.h index 71879f6d..093b284b 100644 --- a/miniwin/src/internal/d3drmrenderer_opengles3.h +++ b/miniwin/src/internal/d3drmrenderer_opengles3.h @@ -74,7 +74,7 @@ class OpenGLES3Renderer : public Direct3DRMRenderer { SDL_GLContext m_context; uint32_t m_msaa; GLuint m_fbo; - GLuint m_resolveFBO = 0; + GLuint m_resolveFBO; GLuint m_colorTarget; GLuint m_resolveColor = 0; GLuint m_depthTarget;