[Scummvm-cvs-logs] SF.net SVN: scummvm:[52264] scummvm/trunk/engines/sci/graphics/transitions. cpp

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Sat Aug 21 16:54:57 CEST 2010


Revision: 52264
          http://scummvm.svn.sourceforge.net/scummvm/?rev=52264&view=rev
Author:   m_kiewitz
Date:     2010-08-21 14:54:57 +0000 (Sat, 21 Aug 2010)

Log Message:
-----------
SCI: now fading color 255 as well in sci1.1

looks better, although sierra didn't do that (examples: qfg3 demo/intro)

Modified Paths:
--------------
    scummvm/trunk/engines/sci/graphics/transitions.cpp

Modified: scummvm/trunk/engines/sci/graphics/transitions.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/transitions.cpp	2010-08-21 14:53:14 UTC (rev 52263)
+++ scummvm/trunk/engines/sci/graphics/transitions.cpp	2010-08-21 14:54:57 UTC (rev 52264)
@@ -285,11 +285,14 @@
 void GfxTransitions::fadeOut() {
 	byte oldPalette[4 * 256], workPalette[4 * 256];
 	int16 stepNr, colorNr;
+	// Sierra did not fade in/out color 255 for sci1.1, but they used it in
+	//  several pictures (e.g. qfg3 demo/intro), so the fading looked weird
+	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 256 : 255;
 
 	g_system->grabPalette(oldPalette, 0, 256);
 
 	for (stepNr = 100; stepNr >= 0; stepNr -= 10) {
-		for (colorNr = 1; colorNr < 255; colorNr++){
+		for (colorNr = 1; colorNr < tillColorNr; colorNr++){
 			workPalette[colorNr * 4 + 0] = oldPalette[colorNr * 4] * stepNr / 100;
 			workPalette[colorNr * 4 + 1] = oldPalette[colorNr * 4 + 1] * stepNr / 100;
 			workPalette[colorNr * 4 + 2] = oldPalette[colorNr * 4 + 2] * stepNr / 100;
@@ -303,9 +306,12 @@
 // the load
 void GfxTransitions::fadeIn() {
 	int16 stepNr;
+	// Sierra did not fade in/out color 255 for sci1.1, but they used it in
+	//  several pictures (e.g. qfg3 demo/intro), so the fading looked weird
+	int16 tillColorNr = getSciVersion() >= SCI_VERSION_1_1 ? 256 : 255;
 
 	for (stepNr = 0; stepNr <= 100; stepNr += 10) {
-		_palette->kernelSetIntensity(1, 255, stepNr, true);
+		_palette->kernelSetIntensity(1, tillColorNr, stepNr, true);
 		g_sci->getEngineState()->wait(2);
 	}
 }


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list