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

rvanlaar roland at rolandvanlaar.nl
Tue Jun 22 20:41:43 UTC 2021


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:
b7c903569c DIRECTOR: speed up transitions for debugFast


Commit: b7c903569cbda42451c635174aa0767a7f826490
    https://github.com/scummvm/scummvm/commit/b7c903569cbda42451c635174aa0767a7f826490
Author: Roland van Laar (roland at rolandvanlaar.nl)
Date: 2021-06-22T22:41:06+02:00

Commit Message:
DIRECTOR: speed up transitions for debugFast

The number of steps a transition has is calculated based on the
chunksize. A larger chunksize means quicker execution with a downside
of not having pixel perfect frames.
Ensures that the chunksize is never more than sprite width and height to
avoid floating point division errors.

This is only enabled when the debugflag is used.

Changed paths:
    engines/director/transitions.cpp


diff --git a/engines/director/transitions.cpp b/engines/director/transitions.cpp
index 879b1fc818..de1d18485f 100644
--- a/engines/director/transitions.cpp
+++ b/engines/director/transitions.cpp
@@ -1052,6 +1052,11 @@ void Window::initTransParams(TransParams &t, Common::Rect &clipRect) {
 		h = (h + 1) >> 1;
 	}
 
+	// If we requested fast transitions, speed everything up
+	// Ensure the chunksize isn't larger than the amount of pixels.
+	if (debugChannelSet(-1, kDebugFast))
+		t.chunkSize = MIN((uint) m, t.chunkSize*16);
+
 	switch (transProps[t.type].dir) {
 	case kTransDirHorizontal:
 		t.steps = w / t.chunkSize;




More information about the Scummvm-git-logs mailing list