[ StefanJer91 @ 05.06.2007. 17:21 ] @
Danas sam pravio jedan mali test kako bih video kakva je razlika kada u pygame-u koristim tehniku poznatu kao dirtyrect(update-ovanje samo delova ekrana koji su se promenili) i kada koristim update-ovanje citavog ekrana. Po logici i mom skromnom, bi trebalo da je prvi nacin svakako optimizovaniji, da jede manje memorije i trosi manje CPU usage (sve podatke sam pokupio iz task managera) ali nije tako! Ustvari, drugi nacin zahteva neznatno manje memorije i CPU usage je tom prilikom manji. Da li onda neko zna zasto je bojle korisiti dirtyrects ili neku drugu tehniku???
[ Radoyitza @ 05.06.2007. 23:34 ] @
Citat:
Po logici i mom skromnom, bi trebalo da je prvi nacin svakako optimizovaniji, da jede manje memorije i trosi manje CPU usage
pa, trebalo bi bit tako u svakom slučaju...

hm, pada mi na pamet samo ovaj razlog zašto to nije tako u tvom primjeru:
možda imaš jako puno sprite-ova, tj. rectangle-ova za prikazat
pa je procesoru 'lakše' prikazat cijeli ekran nego iterirat nad svim tim komadićima ekrana

ali ja sam isto početnik u PyGame-u tako da je ovo samo pretpostavka...


e, da, jesi koristio 'pygame.display.update()' ili 'pygame.display.flip()' za prikaz cijelog ekrana?
[ StefanJer91 @ 06.06.2007. 13:09 ] @
Ima samo jedan sprite :) Prvi put kada sam blitovao background sam stavio da bude pygame.display.flip() a u petlji while sam koristio pygame.display.update(dirtyrects). U sustini, sledio sam primer oldalien.py primera koji se nalazi sa ostalim example-ima koji se dobijaju uz python.
[ Radoyitza @ 06.06.2007. 19:58 ] @
jesi li u while petlji koristio flip() ili update() (naravno, za prikaz cijelog ekrana - bez argumenata)?

btw. display.flip() prije while petlje nema nikakvog uticaja na performanse (poziva se samo jedanput)
[ StefanJer91 @ 06.06.2007. 21:16 ] @
display.flip() je pre while petlje dok je display.update(dirtyrects) u njoj.
[ StefanJer91 @ 07.06.2007. 22:17 ] @
Offtopic: Da li neko pravi neku igru ili nesto drugo u pygame-u???
[ Radoyitza @ 11.06.2007. 03:26 ] @
Citat:
display.flip() je pre while petlje dok je display.update(dirtyrects) u njoj.

pa display.update() će prikazat cijeli ekran samo ako ga pozoveš bez argumenata!!!

Citat:
Offtopic: Da li neko pravi neku igru ili nesto drugo u pygame-u???

ja radim igru u pygame-u
zove se "Think Columns" i bazirana je na starom Seginom klasiku "Columns"
'playable' je, sad slijedi dorada... puno dorade...