MagPI 3 Page 28

De Le French MagPi
Aller à : Navigation, rechercher

Dans cette variante, nous avons créé un plus grand soleil, mis un cercle noir dans son centre et introduit une nouvelle commande pour donner une transparence de 50% à la surface totale du soleil : soleil.set_alpha(128) La valeur 128 peut-être n'importe quelle valeur entre 0 et 255, 255 étant 100% opaque et 0 complètement transparent.

  1. THREE SURFACES V3
  2. By Jaseman - 13 June 2012
  3. TROIS SURFACES V3
  4. Traduit par SF - 23 Juillet 2012

import sys, os, pygame; from pygame.locals import * pygame.init(); horloge = pygame.time.Clock() os.environ['SDL_VIDEO_WINDOW_POS'] = 'center' pygame.display.set_caption("Trois Surfaces") ecran = pygame.display.set_mode([400,200],0,32) # L'écran principal screen ciel = pygame.Surface((400,200)) # La surface ciel ciel.fill((200,255,255)) # Rempli la surface ciel en bleu herbe = pygame.Surface((400,100)) # La surface herbe herbe.fill((50,150,50)) # Rempli la surface herbe en vert soleil = pygame.Surface((80,80)) # La surface soleil soleil.set_colorkey([0,0,0]) soleil.set_alpha(128) pygame.draw.circle(soleil,(255,255,0),(40,40),40) pygame.draw.circle(soleil,(0,0,0),(40,40),15) while True: # Une boucle infinie pour garder l'éxecution du programme for event in pygame.event.get(): if event.type == QUIT: pygame.quit() sys.exit() sourisx,sourisy = pygame.mouse.get_pos() ecran.blit(ciel,(0,0)) # Place la surface ciel en x,y ecran.blit(soleil,(sourisx,sourisy)) # Place la surface soleil en x,y ecran.blit(herbe,(0,100)) # Place la surface herbe en x,y grass pygame.display.update()

Parce que le cercle intérieur est noir, il devient transparent, donnant ainsi l'effet que la surface est percée. Bougez la souris sur l'horizon et regardez avec attention ce qui se passe. Nous vous recommandons de tester encore plus les techniques explicitées ici. Essayez de créer vos propres surfaces, en dessinant des formes à l'intérieur avec des couleurs différentes, en utilisant les commandes surface.alpha() et surface.set_colorkey([]) pour créer des effets de transparence. La maitrise de ces techniques est essentielle si vous souhaitez écrire des jeux, mais ils seront aussi utiles dans d'autres applications où des effets d'affichages sont nécessaires.

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Boîte à outils