merged in bartbes' FSAA checking

This commit is contained in:
Bill Meltsner
2010-04-18 10:16:13 -04:00
+13 -3
View File
@@ -192,8 +192,18 @@ namespace opengl
// Have SDL set the video mode. // Have SDL set the video mode.
if(SDL_SetVideoMode(width, height, 32, sdlflags ) == 0) if(SDL_SetVideoMode(width, height, 32, sdlflags ) == 0)
{ {
std::cerr << "Could not set video mode: " << SDL_GetError() << std::endl; bool failed = true;
return false; if(fsaa > 0)
{
// FSAA might have failed, disable it and try again
SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES, 0);
failed = SDL_SetVideoMode(width, height, 32, sdlflags ) == 0;
}
if(failed)
{
std::cerr << "Could not set video mode: " << SDL_GetError() << std::endl;
return false;
}
} }
// Check if FSAA failed or not // Check if FSAA failed or not
@@ -207,7 +217,7 @@ namespace opengl
// Don't fail because of this, but issue a warning. // Don't fail because of this, but issue a warning.
if ( ! buffers || (samples != fsaa)) if ( ! buffers || (samples != fsaa))
std::cerr << "Warning, quality setting failed! (Result: buffers: " << buffers << ", samples: " << samples << std::endl; std::cerr << "Warning, quality setting failed! (Result: buffers: " << buffers << ", samples: " << samples << ")" << std::endl;
} }
// Okay, setup OpenGL. // Okay, setup OpenGL.