From a8a93489133188f221d079e4d28f6ceb56d2fb83 Mon Sep 17 00:00:00 2001 From: Jules Blok Date: Sun, 21 Aug 2016 17:47:24 +0200 Subject: OGL: Handle cases where reversed depth is already used. --- Source/Core/VideoBackends/OGL/Render.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'Source/Core/VideoBackends/OGL/Render.cpp') diff --git a/Source/Core/VideoBackends/OGL/Render.cpp b/Source/Core/VideoBackends/OGL/Render.cpp index 69f06c6b52..cff3512370 100644 --- a/Source/Core/VideoBackends/OGL/Render.cpp +++ b/Source/Core/VideoBackends/OGL/Render.cpp @@ -1160,9 +1160,16 @@ void Renderer::SetViewport() // value supported by the console GPU. If not, we simply clamp the near/far values // themselves to the maximum value as done above. if (g_ActiveConfig.backend_info.bSupportsDepthClamp) - glDepthRangef(GX_MAX_DEPTH, 0.0f); + { + if (xfmem.viewport.zRange < 0.0f) + glDepthRangef(0.0f, GX_MAX_DEPTH); + else + glDepthRangef(GX_MAX_DEPTH, 0.0f); + } else + { glDepthRangef(GLFar, GLNear); + } } void Renderer::ClearScreen(const EFBRectangle& rc, bool colorEnable, bool alphaEnable, bool zEnable, -- cgit v1.2.3