Je veux modifier les pixels d'une surface.
En fait j'ai 3 surfaces avec de la transparence (playfield) et une surface principale (screen) sur laquelle sont "blittées" les 3 autres surfaces.
Je peux accéder aux pixels des playfields sans faire de LockSurface avant le blit de la première boucle. Après le premier blit, le LockSurface devient obligatoire pour les 3 playfields.
J'ai fait un comparatif, pour le blit des 3 playfields lorsqu'ils n'ont pas besoin d'être lockés, ça met 1ms. Pour le blit avec le lock, c'est 30ms!
J'avais pensé à mettre un
SDL_LockSurface( playfield ); dès l'initialisation et ne jamais relâcher le lock mais là, plus rien ne s'affiche...
PS:Je sais que tu m'as demandé du code, mais je ne sais pas s'il aurait été très pertinant.
Partager