[Scummvm-git-logs] scummvm master -> b5c19491a0185304f4440bec847ab8d9ab5d92a7

sev- noreply at scummvm.org
Sat Oct 25 13:25:57 UTC 2025


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .

Summary:
b5c19491a0 DIRECTOR: Added special case for Matte sprites that abused thickness


Commit: b5c19491a0185304f4440bec847ab8d9ab5d92a7
    https://github.com/scummvm/scummvm/commit/b5c19491a0185304f4440bec847ab8d9ab5d92a7
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2025-10-25T15:25:07+02:00

Commit Message:
DIRECTOR: Added special case for Matte sprites that abused thickness

Fixed book rendering in melements

Changed paths:
    engines/director/channel.cpp
    engines/director/graphics.cpp


diff --git a/engines/director/channel.cpp b/engines/director/channel.cpp
index ee69f480077..5f90f298b15 100644
--- a/engines/director/channel.cpp
+++ b/engines/director/channel.cpp
@@ -164,6 +164,9 @@ const Graphics::Surface *Channel::getMask(bool forceMatte) {
 		_sprite->_ink == kInkTypeDark ||
 		(((_sprite->_thickness & kTHasBlend) || _sprite->_ink == kInkTypeBlend) && _sprite->_blendAmount > 0);
 
+	if (!_sprite->isQDShape() && _sprite->_ink == kInkTypeCopy && _sprite->_thickness & kTHasBlend)
+		needsMatte = true;
+
 	Common::Rect bbox(getBbox());
 
 	if (needsMatte || forceMatte) {
diff --git a/engines/director/graphics.cpp b/engines/director/graphics.cpp
index 3c527294525..4d3c4c46c53 100644
--- a/engines/director/graphics.cpp
+++ b/engines/director/graphics.cpp
@@ -731,8 +731,10 @@ void DirectorPlotData::inkBlitSurface(Common::Rect &srcRect, const Graphics::Sur
 		offsetRect.clip(srfClip);
 		switch (ink) {
 		case kInkTypeCopy:
-			dst->blitFrom(*srf, offsetRect, destRect);
-			return;
+			if (!mask) {
+				dst->blitFrom(*srf, offsetRect, destRect);
+				return;
+			}
 			break;
 		default:
 			break;




More information about the Scummvm-git-logs mailing list