From c64597057818e729b6e406cc98361b270b7f72de Mon Sep 17 00:00:00 2001 From: Pokechu22 Date: Sat, 31 Dec 2022 19:55:53 -0800 Subject: [PATCH] VideoBackends/OGL: Always check for fbfetch support, not just on GLES GL_EXT_shader_framebuffer_fetch is not restricted to GLES (although GL_ARM_shader_framebuffer_fetch is), and is available on Intel GPUs. --- Source/Core/VideoBackends/OGL/OGLRender.cpp | 30 ++++++++++----------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/Source/Core/VideoBackends/OGL/OGLRender.cpp b/Source/Core/VideoBackends/OGL/OGLRender.cpp index 49400d73ff..13549f3d72 100644 --- a/Source/Core/VideoBackends/OGL/OGLRender.cpp +++ b/Source/Core/VideoBackends/OGL/OGLRender.cpp @@ -489,6 +489,21 @@ Renderer::Renderer(std::unique_ptr main_gl_context, float backbuffer_ g_Config.backend_info.bSupportsTextureQueryLevels = GLExtensions::Supports("GL_ARB_texture_query_levels") || GLExtensions::Version() >= 430; + if (GLExtensions::Supports("GL_EXT_shader_framebuffer_fetch")) + { + g_ogl_config.SupportedFramebufferFetch = EsFbFetchType::FbFetchExt; + } + else if (GLExtensions::Supports("GL_ARM_shader_framebuffer_fetch")) + { + g_ogl_config.SupportedFramebufferFetch = EsFbFetchType::FbFetchArm; + } + else + { + g_ogl_config.SupportedFramebufferFetch = EsFbFetchType::FbFetchNone; + } + g_Config.backend_info.bSupportsFramebufferFetch = + g_ogl_config.SupportedFramebufferFetch != EsFbFetchType::FbFetchNone; + if (m_main_gl_context->IsGLES()) { g_ogl_config.SupportedESPointSize = GLExtensions::Supports("GL_OES_geometry_point_size") ? 1 : @@ -517,21 +532,6 @@ Renderer::Renderer(std::unique_ptr main_gl_context, float backbuffer_ // GL_TEXTURE_LOD_BIAS is not supported on GLES. g_Config.backend_info.bSupportsLodBiasInSampler = false; - if (GLExtensions::Supports("GL_EXT_shader_framebuffer_fetch")) - { - g_ogl_config.SupportedFramebufferFetch = EsFbFetchType::FbFetchExt; - } - else if (GLExtensions::Supports("GL_ARM_shader_framebuffer_fetch")) - { - g_ogl_config.SupportedFramebufferFetch = EsFbFetchType::FbFetchArm; - } - else - { - g_ogl_config.SupportedFramebufferFetch = EsFbFetchType::FbFetchNone; - } - g_Config.backend_info.bSupportsFramebufferFetch = - g_ogl_config.SupportedFramebufferFetch != EsFbFetchType::FbFetchNone; - if (GLExtensions::Version() == 300) { g_ogl_config.eSupportedGLSLVersion = GlslEs300;