diff --git a/GPU/GLES/StateMapping.cpp b/GPU/GLES/StateMapping.cpp index 84cec4b44..561ad2668 100644 --- a/GPU/GLES/StateMapping.cpp +++ b/GPU/GLES/StateMapping.cpp @@ -221,7 +221,7 @@ void TransformDrawEngine::ApplyDrawState(int prim) { if (gstate.isDepthTestEnabled()) { glstate.depthTest.enable(); glstate.depthFunc.set(GL_ALWAYS); - glstate.depthWrite.set(depthMask ? GL_TRUE : GL_FALSE); + glstate.depthWrite.set(depthMask || !gstate.isFogEnabled() || !gstate.isDepthWriteEnabled() ? GL_TRUE : GL_FALSE); } else { glstate.depthTest.enable(); glstate.depthFunc.set(GL_ALWAYS);