diff options
| author | Jules Blok <jules.blok@gmail.com> | 2014-10-30 14:56:40 +0100 |
|---|---|---|
| committer | Jules Blok <jules.blok@gmail.com> | 2014-11-23 14:27:38 +0100 |
| commit | 35342664e3f0196aed528c15dc9fadd00bce50a9 (patch) | |
| tree | 0ee90410fa9977254055773c40ce950a96132eee /Source/Core/VideoBackends/OGL/Render.cpp | |
| parent | f370cb386cccfa56e2ef677a55b27561c8217e7d (diff) | |
OGL: Disable stereoscopy if the GPU does not support geometry shaders.
Diffstat (limited to 'Source/Core/VideoBackends/OGL/Render.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/OGL/Render.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/Core/VideoBackends/OGL/Render.cpp b/Source/Core/VideoBackends/OGL/Render.cpp index 1a0b7e5708..bd605c2a2b 100644 --- a/Source/Core/VideoBackends/OGL/Render.cpp +++ b/Source/Core/VideoBackends/OGL/Render.cpp @@ -507,6 +507,8 @@ Renderer::Renderer() g_Config.backend_info.bSupportsBindingLayout = true; g_Config.backend_info.bSupportsEarlyZ = true; } + // TODO: OpenGL ES 3.1 provides the necessary features as extensions. + g_Config.backend_info.bSupportsStereoscopy = false; } else { @@ -521,11 +523,13 @@ Renderer::Renderer() { g_ogl_config.eSupportedGLSLVersion = GLSL_130; g_Config.backend_info.bSupportsEarlyZ = false; // layout keyword is only supported on glsl150+ + g_Config.backend_info.bSupportsStereoscopy = false; // geometry shaders are only supported on glsl150+ } else if (strstr(g_ogl_config.glsl_version, "1.40")) { g_ogl_config.eSupportedGLSLVersion = GLSL_140; g_Config.backend_info.bSupportsEarlyZ = false; // layout keyword is only supported on glsl150+ + g_Config.backend_info.bSupportsStereoscopy = false; // geometry shaders are only supported on glsl150+ } else { @@ -570,6 +574,7 @@ Renderer::Renderer() if (g_ogl_config.max_samples < 1 || !g_ogl_config.bSupportsMSAA) g_ogl_config.max_samples = 1; + g_Config.VerifyValidity(); UpdateActiveConfig(); OSD::AddMessage(StringFromFormat("Video Info: %s, %s, %s", @@ -587,7 +592,8 @@ Renderer::Renderer() g_ogl_config.bSupportsGLBufferStorage ? "" : "BufferStorage ", g_ogl_config.bSupportsGLSync ? "" : "Sync ", g_ogl_config.bSupportsMSAA ? "" : "MSAA ", - g_ogl_config.bSupportSampleShading ? "" : "SSAA " + g_ogl_config.bSupportSampleShading ? "" : "SSAA ", + g_ActiveConfig.backend_info.bSupportsGSInstancing ? "" : "GSInstancing " ); s_LastMultisampleMode = g_ActiveConfig.iMultisampleMode; |
