Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Pygame]Suprimer une image...

21 décembre 2010 à 10:52:36

Bonjours.
J'aimerais savoir comment suprimer une image sous Pygame, en particulier pour le déplacement d'une image.

Dans le tuto sur Pygame, il est dit qu'il faut réapliquer l'image de fond puis le perso à chaque déplacement... Je trouve cette technique dégueulasse :p

N'y a t'il pas une moyen de faire la même chose sans touché au autres images? :-°

Merci Bien ^^
  • Partager sur Facebook
  • Partager sur Twitter
21 décembre 2010 à 11:13:36

si l'image à effacer ne chevauche pas d'autres image à part le fond, tu peux réappliquer le fond seulement sur l'image à effacer.
regardes les arguments de blit().

la méthode universelle c'est: tout effacer, tout réafficher.
après ça dépend de plein de trucs ... ça se chevauche, y a des niveaux alpha, c'est un fond uni, ... de plein de trucs.
  • Partager sur Facebook
  • Partager sur Twitter

Python c'est bon, mangez-en. 

21 décembre 2010 à 11:55:56

Ah ouais...
Donc c'est pas du tout comme avec Tkinter :p

Donc c'est mieux de, comme tu dit, tout suprimer puis tout réafficher plutôt que de réempiler toute les images à chaque fois...

Mais j'ai dû mal à imaginé le fonctionement d'un jeu où il y a du scrolling, comme dans Super Mario Bros...
  • Partager sur Facebook
  • Partager sur Twitter
21 décembre 2010 à 12:10:59

il y a relativement peu de sprites affichés simultanement dans mario et les décors sont simplistes, c'est donc rapide.

ça dépend aussi de la taille de la fenêtre ...

je suppose que Tkinter utilise un systeme de calques.
  • Partager sur Facebook
  • Partager sur Twitter

Python c'est bon, mangez-en. 

23 décembre 2010 à 2:19:38

J'ai entendu parlé d'un module pygame nommé "sprite".
C'est possible de s'en servir pour suprimer un personnage?

Que fait précisement la fonction blit?
Elle réaplique tout par dessus les autre images, ou elle les remplace?
  • Partager sur Facebook
  • Partager sur Twitter
23 décembre 2010 à 8:04:33

Le module pygame.sprite pourrait effectivement te servir...
D' une manière plus précise il faut que tu recherche dans la doc ou ailleurs des infos sur les groupes de rendu (RenderPlain et RenderUpdates entre autres. Une piste pour la doc: http://fr.wikibooks.org/wiki/Pygame/
  • Partager sur Facebook
  • Partager sur Twitter