Antartica (and All)
I thought some more about the rectangle merging... it's not very useful unless we are able to do partial screen updates. On the other hand it might be relevant to know how many times a given area has been changed (might get uglier and uglier)
An alternative (and simple) approach might be:
- divide the screen in blocks (say 10x10 or 20x20)
- when we get dirty rectangle events: increment the dirty flag off the corresponding blocks
- when the timer expires: do a Typing or Full refresh depending on the sum of the dirty flags. Typing if the total dirty count has changes since last time (continue counting), Full if it exceeds a certain limit (then: reset it).
What do you think?
|