Mercurial > jelly
changeset 11:988c08cf091c
Only blit to the dirty rects
| author | Radomir Dopieralski <sheep-devel@sheep.art.pl> |
|---|---|
| date | Wed, 14 Mar 2012 12:10:38 +0100 |
| parents | a822c9f688f2 |
| children | 218b390564c9 |
| files | jelly/display.py |
| diffstat | 1 files changed, 5 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/jelly/display.py Tue Mar 13 22:46:56 2012 +0100 +++ b/jelly/display.py Wed Mar 14 12:10:38 2012 +0100 @@ -97,8 +97,8 @@ sb += db def draw(self): - self.screen.blit(self.background, (0, 0)) if self.first_draw: + self.screen.blit(self.background, (0, 0)) self.lights.draw(self.fog) self.shadows.draw(self.screen) self.sprites.draw(self.screen) @@ -109,10 +109,12 @@ self.lights.clear(self.fog, self.memory) visible = self.lights.draw(self.fog) self.dirty.extend(visible) - self.sprites.clear(self.screen, self.background) + for rect in self.dirty: + self.screen.blit(self.background, rect.topleft, rect) self.shadows.draw(self.screen) self.sprites.draw(self.screen) - self.screen.blit(self.fog, (0, 0)) + for rect in self.dirty: + self.screen.blit(self.fog, rect.topleft, rect) pygame.display.update(self.dirty) self.dirty = []
