diff options
author | Martin Kiewitz | 2010-05-15 14:17:50 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-05-15 14:17:50 +0000 |
commit | eb2b3f352ed03dc7299ff6202e68a68116476aa9 (patch) | |
tree | be15aec31d9d077ffc9760d4ee707d5e22d6503c /engines/sci/graphics/view.cpp | |
parent | 59a255226f95d395cb73119ae2e04a3494d404a5 (diff) | |
download | scummvm-rg350-eb2b3f352ed03dc7299ff6202e68a68116476aa9.tar.gz scummvm-rg350-eb2b3f352ed03dc7299ff6202e68a68116476aa9.tar.bz2 scummvm-rg350-eb2b3f352ed03dc7299ff6202e68a68116476aa9.zip |
SCI: adding upscaled hires mode 640x480 for kq6 and gk1, fixing valgrind error in GfxPortrait class, not using priority anymore when drawing hires cels (shouldnt be needed for kq6)
svn-id: r49040
Diffstat (limited to 'engines/sci/graphics/view.cpp')
-rw-r--r-- | engines/sci/graphics/view.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/engines/sci/graphics/view.cpp b/engines/sci/graphics/view.cpp index aa1ad10c75..5ce323751c 100644 --- a/engines/sci/graphics/view.cpp +++ b/engines/sci/graphics/view.cpp @@ -524,12 +524,16 @@ void GfxView::draw(Common::Rect rect, Common::Rect clipRect, Common::Rect clipRe for (y = 0; y < height; y++, bitmap += celWidth) { for (x = 0; x < width; x++) { color = bitmap[x]; - if (color != clearKey && priority >= _screen->getPriority(clipRectTranslated.left + x, clipRectTranslated.top + y)) { - // UpscaledHires means view is hires and is supposed to get drawn onto lowres screen - if (!upscaledHires) - _screen->putPixel(clipRectTranslated.left + x, clipRectTranslated.top + y, drawMask, palette->mapping[color], priority, 0); - else + if (color != clearKey) { + if (!upscaledHires) { + if (priority >= _screen->getPriority(clipRectTranslated.left + x, clipRectTranslated.top + y)) + _screen->putPixel(clipRectTranslated.left + x, clipRectTranslated.top + y, drawMask, palette->mapping[color], priority, 0); + } else { + // UpscaledHires means view is hires and is supposed to get drawn onto lowres screen + // FIXME(?): we can't read priority directly with the hires coordinates. may not be needed at all + // in kq6 _screen->putPixelOnDisplay(clipRectTranslated.left + x, clipRectTranslated.top + y, palette->mapping[color]); + } } } } |