aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
diff options
context:
space:
mode:
authorColin Snover2016-08-04 19:19:06 -0500
committerColin Snover2016-08-11 20:50:33 -0500
commitc28a5733e0911f071f02f3d14aec0dfe53f1aa05 (patch)
treed3ae9e3eefb176176841975cf5fd5ab20a562e01 /engines/sci
parent74e94ac7f32dfd06567cd153127b9dafc2dec5d8 (diff)
downloadscummvm-rg350-c28a5733e0911f071f02f3d14aec0dfe53f1aa05.tar.gz
scummvm-rg350-c28a5733e0911f071f02f3d14aec0dfe53f1aa05.tar.bz2
scummvm-rg350-c28a5733e0911f071f02f3d14aec0dfe53f1aa05.zip
SCI32: Fix GfxFrameout::_isHiRes flag to be accurate for all games
Diffstat (limited to 'engines/sci')
-rw-r--r--engines/sci/graphics/frameout.cpp12
-rw-r--r--engines/sci/graphics/frameout.h3
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