Merge pull request #1738 from degasus/master

OGL: Fix OGL3 with stereo enabled
This commit is contained in:
Markus Wick 2014-12-20 19:57:27 +01:00
commit f8bf938f37
3 changed files with 10 additions and 5 deletions

View File

@ -556,9 +556,6 @@ Renderer::Renderer()
bSuccess = false;
}
if (g_Config.iStereoMode > 0 && !g_Config.backend_info.bSupportsGeometryShaders)
OSD::AddMessage("Stereoscopic 3D isn't supported by your GPU, support for OpenGL 3.2 is required.", 10000);
if (!bSuccess)
{
// Not all needed extensions are supported, so we have to stop here.

View File

@ -154,6 +154,7 @@ static void InitBackendInfo()
void VideoBackend::ShowConfig(void *_hParent)
{
if (!s_BackendInitialized)
InitBackendInfo();
Host_ShowVideoConfig(_hParent, GetDisplayName(), "gfx_opengl");
}

View File

@ -118,6 +118,8 @@ void VideoConfig::Load(const std::string& ini_file)
// triplicated for each video backend.
if (bEnableShaderDebugging)
OSD::AddMessage("Warning: Shader Debugging is enabled, performance will suffer heavily", 15000);
VerifyValidity();
}
void VideoConfig::GameIniLoad()
@ -214,7 +216,12 @@ void VideoConfig::VerifyValidity()
// TODO: Check iMaxAnisotropy value
if (iAdapter < 0 || iAdapter > ((int)backend_info.Adapters.size() - 1)) iAdapter = 0;
if (iMultisampleMode < 0 || iMultisampleMode >= (int)backend_info.AAModes.size()) iMultisampleMode = 0;
if (!backend_info.bSupportsGeometryShaders) iStereoMode = 0;
if (iStereoMode > 0 && !backend_info.bSupportsGeometryShaders)
{
OSD::AddMessage("Stereoscopic 3D isn't supported by your GPU, support for OpenGL 3.2 is required.", 10000);
iStereoMode = 0;
}
}
void VideoConfig::Save(const std::string& ini_file)