comparison engine/core/controller/engine.cpp @ 425:ad7969d9460b

A client can now specify a global color key to be used with all images. The default color key is (255,0,255) in RGB format. Also the client can enable/disable the color key feature by using the setColorKeyEnabled function in the EngineSettings class. By default the color key feature is disabled. fixes[t:451]
author vtchill@33b003aa-7bff-0310-803a-e67f0ece8222
date Sat, 20 Feb 2010 19:11:01 +0000
parents 9d94f4676d17
children 356634098bd9
comparison
equal deleted inserted replaced
424:e29fbf84cb41 425:ad7969d9460b
173 m_soundclippool->addResourceLoader(new OggLoader(m_vfs)); 173 m_soundclippool->addResourceLoader(new OggLoader(m_vfs));
174 174
175 FL_LOG(_log, "Creating render backend"); 175 FL_LOG(_log, "Creating render backend");
176 std::string rbackend(m_settings.getRenderBackend()); 176 std::string rbackend(m_settings.getRenderBackend());
177 if (rbackend == "SDL") { 177 if (rbackend == "SDL") {
178 m_renderbackend = new RenderBackendSDL(); 178 m_renderbackend = new RenderBackendSDL(m_settings.getColorKey());
179 FL_LOG(_log, "SDL Render backend created"); 179 FL_LOG(_log, "SDL Render backend created");
180 } else { 180 } else {
181 #ifdef HAVE_OPENGL 181 #ifdef HAVE_OPENGL
182 m_renderbackend = new RenderBackendOpenGL(); 182 m_renderbackend = new RenderBackendOpenGL(m_settings.getColorKey());
183 FL_LOG(_log, "OpenGL Render backend created"); 183 FL_LOG(_log, "OpenGL Render backend created");
184 #else 184 #else
185 m_renderbackend = new RenderBackendSDL(); 185 m_renderbackend = new RenderBackendSDL(m_settings.getColorKey());
186 // Remember the choice so we pick the right graphics class. 186 // Remember the choice so we pick the right graphics class.
187 rbackend = "SDL"; 187 rbackend = "SDL";
188 FL_WARN(_log, "Tried to select OpenGL, even though it is not compiled into the engine. Falling back to SDL Render backend"); 188 FL_WARN(_log, "Tried to select OpenGL, even though it is not compiled into the engine. Falling back to SDL Render backend");
189 #endif 189 #endif
190 } 190 }
191 FL_LOG(_log, "Initializing render backend"); 191 FL_LOG(_log, "Initializing render backend");
192 m_renderbackend->setChunkingSize(m_settings.getImageChunkingSize()); 192 m_renderbackend->setChunkingSize(m_settings.getImageChunkingSize());
193 m_renderbackend->setColorKeyEnabled(m_settings.isColorKeyEnabled());
193 m_renderbackend->init(); 194 m_renderbackend->init();
194 195
195 FL_LOG(_log, "Creating main screen"); 196 FL_LOG(_log, "Creating main screen");
196 m_renderbackend->createMainScreen( 197 m_renderbackend->createMainScreen(
197 m_settings.getScreenWidth(), 198 m_settings.getScreenWidth(),