[Scummvm-git-logs] scummvm master -> 9fa0e1d2c28bc22eac691cfa98e6115686aca4ce
ysj1173886760
42030331+ysj1173886760 at users.noreply.github.com
Tue Aug 17 01:48:31 UTC 2021
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
efe26065ef Revert "DIRECTOR: apply global inverter on reverse type ink."
9fa0e1d2c2 DIRECTOR: fix inkTypeAdd
Commit: efe26065efa52982f27b0ef32c6b8dc98615d7c4
https://github.com/scummvm/scummvm/commit/efe26065efa52982f27b0ef32c6b8dc98615d7c4
Author: ysj1173886760 (1173886760 at qq.com)
Date: 2021-08-17T09:27:00+08:00
Commit Message:
Revert "DIRECTOR: apply global inverter on reverse type ink."
This reverts commit b3aec17d6db8ae8f49587e5c6dc14a3ddc4d7033.
inverter is not working correctly on reversed text.
further investigation is needed.
Changed paths:
engines/director/graphics.cpp
diff --git a/engines/director/graphics.cpp b/engines/director/graphics.cpp
index 50fb9158ab..113194fc88 100644
--- a/engines/director/graphics.cpp
+++ b/engines/director/graphics.cpp
@@ -229,7 +229,7 @@ void inkDrawPixel(int x, int y, int src, void *data) {
*dst = p->applyColor ? (src & p->foreColor) | (*dst & ~src) : (*dst & ~src);
break;
case kInkTypeReverse:
- *dst = g_director->_wm->inverter(src);
+ *dst ^= ~(src);
break;
case kInkTypeNotReverse:
*dst ^= src;
Commit: 9fa0e1d2c28bc22eac691cfa98e6115686aca4ce
https://github.com/scummvm/scummvm/commit/9fa0e1d2c28bc22eac691cfa98e6115686aca4ce
Author: ysj1173886760 (1173886760 at qq.com)
Date: 2021-08-17T09:48:08+08:00
Commit Message:
DIRECTOR: fix inkTypeAdd
Changed paths:
engines/director/graphics.cpp
diff --git a/engines/director/graphics.cpp b/engines/director/graphics.cpp
index 113194fc88..f5100e4a7a 100644
--- a/engines/director/graphics.cpp
+++ b/engines/director/graphics.cpp
@@ -256,7 +256,9 @@ void inkDrawPixel(int x, int y, int src, void *data) {
*dst = p->_wm->findBestColor(MIN((rSrc + rDst), 0xff), MIN((gSrc + gDst), 0xff), MIN((bSrc + bDst), 0xff));
break;
case kInkTypeAdd:
- *dst = p->_wm->findBestColor(abs(rSrc + rDst) % 0xff + 1, abs(gSrc + gDst) % 0xff + 1, abs(bSrc + bDst) % 0xff + 1);
+ // in basilisk, D3.1 is exactly using this method, adding color directly without preventing the overflow.
+ // but i think min(src + dst, 255) will give us a better visual effect
+ *dst = p->_wm->findBestColor(rSrc + rDst, gSrc + gDst, bSrc + bDst);
break;
case kInkTypeSubPin:
*dst = p->_wm->findBestColor(MAX(rSrc - rDst, 0), MAX(gSrc - gDst, 0), MAX(bSrc - bDst, 0));
More information about the Scummvm-git-logs
mailing list