From b6067bb90d46d351c2e0c94a5dd46d0c87ae70a3 Mon Sep 17 00:00:00 2001 From: Sergey Lipskiy Date: Fri, 17 Feb 2017 15:53:46 +0700 Subject: [PATCH] Call glMemoryBarrier before polygon draw when N64DepthCompare enabled. --- src/Graphics/OpenGLContext/opengl_BufferedDrawer.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Graphics/OpenGLContext/opengl_BufferedDrawer.cpp b/src/Graphics/OpenGLContext/opengl_BufferedDrawer.cpp index 5744ee6e..7fe094c6 100644 --- a/src/Graphics/OpenGLContext/opengl_BufferedDrawer.cpp +++ b/src/Graphics/OpenGLContext/opengl_BufferedDrawer.cpp @@ -189,6 +189,9 @@ void BufferedDrawer::_updateTrianglesBuffers(const graphics::Context::DrawTriang void BufferedDrawer::drawTriangles(const graphics::Context::DrawTriangleParameters & _params) { + if (config.frameBufferEmulation.N64DepthCompare != 0) + glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); + _updateTrianglesBuffers(_params); if (config.generalEmulation.enableHWLighting != 0)