[Scummvm-cvs-logs] scummvm master -> f090eb672714233eea7f13dd56c2fd159fd6bd7e

sev- sev at scummvm.org
Fri Jun 17 00:20:16 CEST 2011


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:
f090eb6727 SWORD25: Fix image blending for black


Commit: f090eb672714233eea7f13dd56c2fd159fd6bd7e
    https://github.com/scummvm/scummvm/commit/f090eb672714233eea7f13dd56c2fd159fd6bd7e
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2011-06-16T15:17:25-07:00

Commit Message:
SWORD25: Fix image blending for black

This fixes exit menu.

Changed paths:
    engines/sword25/gfx/image/renderedimage.cpp



diff --git a/engines/sword25/gfx/image/renderedimage.cpp b/engines/sword25/gfx/image/renderedimage.cpp
index a9c9de4..f5f33d8 100644
--- a/engines/sword25/gfx/image/renderedimage.cpp
+++ b/engines/sword25/gfx/image/renderedimage.cpp
@@ -373,17 +373,23 @@ bool RenderedImage::blit(int posX, int posY, int flipping, Common::Rect *pPartRe
 
 				default: // alpha blending
 #if defined(SCUMM_LITTLE_ENDIAN)
-					if (cb != 255)
+					if (cb == 0)
+						*out = 0;
+					else if (cb != 255)
 						*out += ((b - *out) * a * cb) >> 16;
 					else
 						*out += ((b - *out) * a) >> 8;
 					out++;
-					if (cg != 255)
+					if (cg == 0)
+						*out = 0;
+					else if (cg != 255)
 						*out += ((g - *out) * a * cg) >> 16;
 					else
 						*out += ((g - *out) * a) >> 8;
 					out++;
-					if (cr != 255)
+					if (cr == 0)
+						*out = 0;
+					else if (cr != 255)
 						*out += ((r - *out) * a * cr) >> 16;
 					else
 						*out += ((r - *out) * a) >> 8;
@@ -393,17 +399,23 @@ bool RenderedImage::blit(int posX, int posY, int flipping, Common::Rect *pPartRe
 #else
 					*out = 255;
 					out++;
-					if (cr != 255)
+					if (cr == 0)
+						*out = 0;
+					else if (cr != 255)
 						*out += ((r - *out) * a * cr) >> 16;
 					else
 						*out += ((r - *out) * a) >> 8;
 					out++;
-					if (cg != 255)
+					if (cg == 0)
+						*out = 0;
+					else if (cg != 255)
 						*out += ((g - *out) * a * cg) >> 16;
 					else
 						*out += ((g - *out) * a) >> 8;
 					out++;
-					if (cb != 255)
+					if (cb == 0)
+						*out = 0;
+					else if (cb != 255)
 						*out += ((b - *out) * a * cb) >> 16;
 					else
 						*out += ((b - *out) * a) >> 8;






More information about the Scummvm-git-logs mailing list