diff options
Diffstat (limited to 'engines/sci')
-rw-r--r-- | engines/sci/graphics/frameout.cpp | 12 | ||||
-rw-r--r-- | engines/sci/graphics/frameout.h | 3 |
2 files changed, 6 insertions, 9 deletions
diff --git a/engines/sci/graphics/frameout.cpp b/engines/sci/graphics/frameout.cpp index 1decfa03a9..21ffb5f937 100644 --- a/engines/sci/graphics/frameout.cpp +++ b/engines/sci/graphics/frameout.cpp @@ -56,7 +56,7 @@ namespace Sci { GfxFrameout::GfxFrameout(SegManager *segMan, ResourceManager *resMan, GfxCoordAdjuster *coordAdjuster, GfxScreen *screen, GfxPalette32 *palette, GfxTransitions32 *transitions) : - _isHiRes(false), + _isHiRes(ConfMan.getBool("enable_high_resolution_graphics")), _palette(palette), _resMan(resMan), _screen(screen), @@ -75,13 +75,9 @@ GfxFrameout::GfxFrameout(SegManager *segMan, ResourceManager *resMan, GfxCoordAd _currentBuffer.setPixels(calloc(1, screen->getDisplayWidth() * screen->getDisplayHeight())); - // TODO: Make hires detection work uniformly across all SCI engine - // versions (this flag is normally passed by SCI::MakeGraphicsMgr - // to the GraphicsMgr constructor depending upon video configuration, - // so should be handled upstream based on game configuration instead - // of here) - if (getSciVersion() >= SCI_VERSION_2_1_EARLY && _resMan->detectHires()) { - _isHiRes = true; + // QFG4 is the only SCI32 game that doesn't have a high-resolution toggle + if (g_sci->getGameId() == GID_QFG4) { + _isHiRes = false; } switch (g_sci->getGameId()) { diff --git a/engines/sci/graphics/frameout.h b/engines/sci/graphics/frameout.h index 42f1d80101..012ecf9e64 100644 --- a/engines/sci/graphics/frameout.h +++ b/engines/sci/graphics/frameout.h @@ -41,7 +41,6 @@ struct PlaneShowStyle; */ class GfxFrameout { private: - bool _isHiRes; GfxCoordAdjuster32 *_coordAdjuster; GfxPalette32 *_palette; ResourceManager *_resMan; @@ -309,6 +308,8 @@ private: } public: + bool _isHiRes; + /** * Whether palMorphFrameOut should be used instead of * frameOut for rendering. Used by kMorphOn to |