[Scummvm-git-logs] scummvm master -> 13d41540bea1c2281b5d90ddae7168dc74d95a2a
aquadran
aquadran at gmail.com
Thu Nov 19 06:03:01 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
13d41540be WINTERMUTE: Fixed switching to 2D renderer for 2D games
Commit: 13d41540bea1c2281b5d90ddae7168dc74d95a2a
https://github.com/scummvm/scummvm/commit/13d41540bea1c2281b5d90ddae7168dc74d95a2a
Author: PaweÅ KoÅodziejski (aquadran at users.sourceforge.net)
Date: 2020-11-19T07:02:53+01:00
Commit Message:
WINTERMUTE: Fixed switching to 2D renderer for 2D games
Changed paths:
engines/wintermute/base/base_game.cpp
engines/wintermute/wintermute.cpp
diff --git a/engines/wintermute/base/base_game.cpp b/engines/wintermute/base/base_game.cpp
index 81ae51b931..2e9df492f8 100644
--- a/engines/wintermute/base/base_game.cpp
+++ b/engines/wintermute/base/base_game.cpp
@@ -502,14 +502,22 @@ bool BaseGame::initialize1() {
//////////////////////////////////////////////////////////////////////
bool BaseGame::initialize2() { // we know whether we are going to be accelerated
#ifdef ENABLE_WME3D
+ Common::String rendererConfig = ConfMan.get("renderer");
+ Graphics::RendererType desiredRendererType = Graphics::parseRendererTypeCode(rendererConfig);
+
+ if (!_playing3DGame && desiredRendererType == Graphics::kRendererTypeTinyGL) {
+ _renderer = makeOSystemRenderer(this);
+ if (_renderer == nullptr) {
+ return STATUS_FAILED;
+ }
+ return STATUS_OK;
+ }
+
#if defined(USE_OPENGL_GAME) || defined(USE_OPENGL_SHADERS) || defined(USE_GLES2)
initGraphics3d(_settings->getResWidth(), _settings->getResHeight());
bool backendCapableOpenGL = g_system->hasFeature(OSystem::kFeatureOpenGLForGame);
#endif
- Common::String rendererConfig = ConfMan.get("renderer");
- Graphics::RendererType desiredRendererType = Graphics::parseRendererTypeCode(rendererConfig);
-
#if defined(USE_OPENGL_GAME)
// Check the OpenGL context actually supports shaders
if (backendCapableOpenGL && desiredRendererType == Graphics::kRendererTypeOpenGLShaders && !OpenGLContext.shadersSupported) {
@@ -528,8 +536,8 @@ bool BaseGame::initialize2() { // we know whether we are going to be accelerated
}
#endif // defined(USE_OPENGL)
if (_playing3DGame && desiredRendererType == Graphics::kRendererTypeTinyGL) {
- // TODO
- //_renderer3D = makeTinyGL3DRenderer(this);
+ _renderer3D = nullptr;// TODO: makeTinyGL3DRenderer(this);
+ error("3D software renderered is not supported yet");
}
_renderer = _renderer3D;
#if !defined(USE_OPENGL_GAME) && !defined(USE_OPENGL_SHADERS) && !defined(USE_GLES2)
diff --git a/engines/wintermute/wintermute.cpp b/engines/wintermute/wintermute.cpp
index 6a00b782cb..22bf6275c6 100644
--- a/engines/wintermute/wintermute.cpp
+++ b/engines/wintermute/wintermute.cpp
@@ -114,7 +114,6 @@ bool WintermuteEngine::hasFeature(EngineFeature f) const {
Common::Error WintermuteEngine::run() {
// Initialize graphics using following:
-#if !defined(ENABLE_WME3D) || (!defined(USE_OPENGL_GAME) && !defined(USE_OPENGL_SHADERS) && !defined(USE_GLES2))
Graphics::PixelFormat format(4, 8, 8, 8, 8, 24, 16, 8, 0);
if (_gameDescription->adDesc.flags & GF_LOWSPEC_ASSETS) {
initGraphics(320, 240, &format);
@@ -128,9 +127,6 @@ Common::Error WintermuteEngine::run() {
if (g_system->getScreenFormat() != format) {
return Common::kUnsupportedColorMode;
}
-#else
- initGraphics3d(800, 600);
-#endif
// Create debugger console. It requires GFX to be initialized
_dbgController = new DebuggerController(this);
More information about the Scummvm-git-logs
mailing list