From 025be70c4293e0578f5fab3570ef4cd732325867 Mon Sep 17 00:00:00 2001 From: Gregory Hainaut Date: Sun, 15 May 2016 16:29:29 +0200 Subject: [PATCH] gsdx-ogl: allow to fallback to a slow accurate DATE when GL_ARB_shader_image_load_store isn't supported The best is still to have a DX11 generation GPU --- plugins/GSdx/GSRendererOGL.cpp | 8 +++++++- plugins/GSdx/GSSetting.cpp | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/plugins/GSdx/GSRendererOGL.cpp b/plugins/GSdx/GSRendererOGL.cpp index e705b097ac..b499ad42d3 100644 --- a/plugins/GSdx/GSRendererOGL.cpp +++ b/plugins/GSdx/GSRendererOGL.cpp @@ -828,7 +828,13 @@ void GSRendererOGL::DrawPrims(GSTexture* rt, GSTexture* ds, GSTextureCache::Sour DATE_GL45 = true; DATE = false; } else { - DATE_GL42 = GLLoader::found_GL_ARB_shader_image_load_store; + if (GLLoader::found_GL_ARB_shader_image_load_store) { + DATE_GL42 = true; + } else { + require_barrier = true; + DATE_GL45 = true; + DATE = false; + } } } } diff --git a/plugins/GSdx/GSSetting.cpp b/plugins/GSdx/GSSetting.cpp index 6a977ed0e6..d1352e4f13 100644 --- a/plugins/GSdx/GSSetting.cpp +++ b/plugins/GSdx/GSSetting.cpp @@ -93,7 +93,7 @@ const char* dialog_message(int ID, bool* updateText) { "It is basically a trade-off between GPU/CPU."; case IDC_ACCURATE_DATE: return "Implement a more accurate algorithm to compute GS destination alpha testing.\n\n" - "It could be slower when the effects are used.\n\nNote: it requires the OpenGL 4.2 extension GL_ARB_shader_image_load_store."; + "It could be slower when the effects are used."; case IDC_ACCURATE_BLEND_UNIT: return "Control the accuracy level of the GS blending unit emulation.\n\n" "None:\nFast but introduce various rendering issues. It is intended for slow computer.\n\n"