comparison engine/core/controller/engine.cpp @ 652:da9c4cfe8f8e

* The engine now checks to make sure the selected driver is supported by the users OS.
author prock@33b003aa-7bff-0310-803a-e67f0ece8222
date Fri, 15 Oct 2010 15:13:10 +0000
parents 51bbda7676f0
children 01acc9fc35ea
comparison
equal deleted inserted replaced
651:2851e232a113 652:da9c4cfe8f8e
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * 19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
20 ***************************************************************************/ 20 ***************************************************************************/
21 21
22 // Standard C++ library includes 22 // Standard C++ library includes
23 #include <iostream> 23 #include <iostream>
24 #include <algorithm>
24 25
25 // 3rd party library includes 26 // 3rd party library includes
26 #include <SDL.h> 27 #include <SDL.h>
27 #include <SDL_ttf.h> 28 #include <SDL_ttf.h>
28 29
198 FL_WARN(_log, "Tried to select OpenGL, even though it is not compiled into the engine. Falling back to SDL Render backend"); 199 FL_WARN(_log, "Tried to select OpenGL, even though it is not compiled into the engine. Falling back to SDL Render backend");
199 #endif 200 #endif
200 } 201 }
201 FL_LOG(_log, "Initializing render backend"); 202 FL_LOG(_log, "Initializing render backend");
202 m_renderbackend->setColorKeyEnabled(m_settings.isColorKeyEnabled()); 203 m_renderbackend->setColorKeyEnabled(m_settings.isColorKeyEnabled());
203 m_renderbackend->init(m_settings.getVideoDriver()); 204
205 std::string driver = m_settings.getVideoDriver();
206 std::vector<std::string> drivers = m_devcaps.getAvailableDrivers();
207
208 if (driver != ""){
209 if (std::find (drivers.begin(), drivers.end(), driver) == drivers.end()) {
210 FL_WARN(_log, "Selected driver is not supported for your Operating System! Reverting to default driver.");
211 driver = "";
212 }
213 }
214
215 m_renderbackend->init(driver);
204 216
205 FL_LOG(_log, "Querying device capabilities"); 217 FL_LOG(_log, "Querying device capabilities");
206 m_devcaps.fillDeviceCaps(); 218 m_devcaps.fillDeviceCaps();
207 219
208 uint16_t bpp = m_settings.getBitsPerPixel(); 220 uint16_t bpp = m_settings.getBitsPerPixel();