diff --git a/src/Cafe/HW/Latte/Renderer/Metal/MetalOutputShaderCache.cpp b/src/Cafe/HW/Latte/Renderer/Metal/MetalOutputShaderCache.cpp index aec662bb..2f4295d4 100644 --- a/src/Cafe/HW/Latte/Renderer/Metal/MetalOutputShaderCache.cpp +++ b/src/Cafe/HW/Latte/Renderer/Metal/MetalOutputShaderCache.cpp @@ -28,6 +28,7 @@ MTL::RenderPipelineState* MetalOutputShaderCache::GetPipeline(RendererOutputShad NS::Error* error = nullptr; renderPipelineState = m_mtlr->GetDevice()->newRenderPipelineState(renderPipelineDescriptor, &error); + renderPipelineDescriptor->release(); if (error) { cemuLog_log(LogType::Force, "error creating output render pipeline state: {}", error->localizedDescription()->utf8String()); diff --git a/src/Cafe/HW/Latte/Renderer/Metal/MetalRenderer.cpp b/src/Cafe/HW/Latte/Renderer/Metal/MetalRenderer.cpp index 58ca83c7..6dce01ff 100644 --- a/src/Cafe/HW/Latte/Renderer/Metal/MetalRenderer.cpp +++ b/src/Cafe/HW/Latte/Renderer/Metal/MetalRenderer.cpp @@ -1856,7 +1856,7 @@ void MetalRenderer::EndEncoding() if (m_commandEncoder) { m_commandEncoder->endEncoding(); - //m_commandEncoder->release(); + m_commandEncoder->release(); m_commandEncoder = nullptr; m_encoderType = MetalEncoderType::None;