diff --git a/Source/Core/Core/DolphinAnalytics.cpp b/Source/Core/Core/DolphinAnalytics.cpp index 5c4c420168..93d42d2db9 100644 --- a/Source/Core/Core/DolphinAnalytics.cpp +++ b/Source/Core/Core/DolphinAnalytics.cpp @@ -421,6 +421,8 @@ void DolphinAnalytics::MakePerGameBuilder() builder.AddData("gpu-has-palette-conversion", g_Config.backend_info.bSupportsPaletteConversion); builder.AddData("gpu-has-clip-control", g_Config.backend_info.bSupportsClipControl); builder.AddData("gpu-has-ssaa", g_Config.backend_info.bSupportsSSAA); + builder.AddData("gpu-has-logic-ops", g_Config.backend_info.bSupportsLogicOp); + builder.AddData("gpu-has-framebuffer-fetch", g_Config.backend_info.bSupportsFramebufferFetch); // NetPlay / recording. builder.AddData("netplay", NetPlay::IsNetPlayRunning()); @@ -428,8 +430,7 @@ void DolphinAnalytics::MakePerGameBuilder() // Controller information // We grab enough to tell what percentage of our users are playing with keyboard/mouse, some kind - // of gamepad - // or the official GameCube adapter. + // of gamepad, or the official GameCube adapter. builder.AddData("gcadapter-detected", GCAdapter::IsDetected(nullptr)); builder.AddData("has-controller", Pad::GetConfig()->IsControllerControlledByGamepadDevice(0) || GCAdapter::IsDetected(nullptr)); 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;