[Scummvm-devel] Minimal screen updates and possible OSystem improvements

Max Horn max at quendi.de
Tue Nov 10 14:27:05 CET 2009


Hi Vladimir!

Am 10.11.2009 um 13:14 schrieb Vladimir Menshakov:

> Good day, everyone!
>
> I hope you could tell me about "minimal updates" approach in  
> scummvm's OSystem. I found several possible oversights in API:
> 1. copyRectToScreen() does not support colorkey or alpha blits.

This is not an oversight, this is intentional -- OSystem does not  
support colorkey nor alpha blits for the screen surface, and there are  
no plans currently to change that.

> 2. lock-unlockScreen() invalidates whole screen (for obvious reasons).
>
> Something easily could be done here:
> 1. We could implement various copyRectToScreen variations (colorkey,  
> alpha, colorkey + alpha). Or, at least, colorkey, I'm pretty sure it  
> could be accelerated in the most embedded backends.

OK, but to what end? Which frontend code would benefit from that??

> 2. Add lockRect()/unlockRect functions, returning pixel data  
> pointer, and pitch info (usually screen scanline width) which  
> invalidates only requested rectangle.

Same as above: Which application do you have in mind? At first glance,  
these would only be helpful if some code needs to read a rect from the  
current screen, modify it, and write it back. Otherwise, one can  
simply use copyRectToScreen().


Bye,
Max




More information about the Scummvm-devel mailing list