[Scummvm-git-logs] scummvm master -> 5fd4aae0ea7c22ab1cbcd34fa3de52109dabd21b

aquadran noreply at scummvm.org
Wed Jun 11 04:24:15 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:
5fd4aae0ea WINTERMUTE: Alpha channel should be always ignored BMP files


Commit: 5fd4aae0ea7c22ab1cbcd34fa3de52109dabd21b
    https://github.com/scummvm/scummvm/commit/5fd4aae0ea7c22ab1cbcd34fa3de52109dabd21b
Author: Paweł Kołodziejski (aquadran at gmail.com)
Date: 2025-06-11T06:24:11+02:00

Commit Message:
WINTERMUTE: Alpha channel should be always ignored BMP files

Changed paths:
    engines/wintermute/base/gfx/opengl/base_surface_opengl3d.cpp
    engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp


diff --git a/engines/wintermute/base/gfx/opengl/base_surface_opengl3d.cpp b/engines/wintermute/base/gfx/opengl/base_surface_opengl3d.cpp
index dd9eee3e20b..461115f1b8e 100644
--- a/engines/wintermute/base/gfx/opengl/base_surface_opengl3d.cpp
+++ b/engines/wintermute/base/gfx/opengl/base_surface_opengl3d.cpp
@@ -147,17 +147,16 @@ bool BaseSurfaceOpenGL3D::create(const Common::String &filename, bool defaultCK,
 	_imageData = img.getSurface()->convertTo(Graphics::PixelFormat(4, 8, 8, 8, 8, 0, 8, 16, 24), img.getPalette(), img.getPaletteCount());
 #endif
 
-	if (BaseEngine::instance().getTargetExecutable() < WME_LITE) {
+	if (_filename.hasSuffixIgnoreCase(".bmp")) {
+		// Ignores alpha channel for BMPs
+		needsColorKey = true;
+	} else if (BaseEngine::instance().getTargetExecutable() < WME_LITE) {
 		// WME 1.x always use colorkey, even for images with transparency
 		needsColorKey = true;
 		replaceAlpha = false;
 	} else if (BaseEngine::instance().isFoxTail()) {
 		// FoxTail does not use colorkey
 		needsColorKey = false;
-	} else if (_filename.hasSuffix(".bmp")) {
-		// generic WME Lite ignores alpha channel for BMPs
-		needsColorKey = true;
-		replaceAlpha = false;
 	} else if (img.getSurface()->format.aBits() == 0) {
 		// generic WME Lite does not use colorkey for non-BMPs with transparency
 		needsColorKey = true;
diff --git a/engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp b/engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp
index 8e3dcb4c089..961f6042535 100644
--- a/engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp
+++ b/engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp
@@ -135,17 +135,16 @@ bool BaseSurfaceOSystem::finishLoad() {
 		_surface->copyFrom(*image->getSurface());
 	}
 
-	if (BaseEngine::instance().getTargetExecutable() < WME_LITE) {
+	if (_filename.hasSuffixIgnoreCase(".bmp")) {
+		// Ignores alpha channel for BMPs
+		needsColorKey = true;
+	} else if (BaseEngine::instance().getTargetExecutable() < WME_LITE) {
 		// WME 1.x always use colorkey, even for images with transparency
 		needsColorKey = true;
 		replaceAlpha = false;
 	} else if (BaseEngine::instance().isFoxTail()) {
 		// FoxTail does not use colorkey
 		needsColorKey = false;
-	} else if (_filename.hasSuffix(".bmp")) {
-		// generic WME Lite ignores alpha channel for BMPs
-		needsColorKey = true;
-		replaceAlpha = false;
 	} else if (image->getSurface()->format.aBits() == 0) {
 		// generic WME Lite does not use colorkey for non-BMPs with transparency
 		needsColorKey = true;




More information about the Scummvm-git-logs mailing list