pygame
Créer une fenêtre simple de pygame
Recherche…
Le code complet
import pygame
pygame.init()
WIDTH = 300
HEIGHT = 200
SCREEN = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption('My Game')
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)
YELLOW = (255, 255, 255)
SCREEN.fill(RED)
pygame.display.flip()
is_running = True
while is_running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
is_running = False
pygame.quit()
Importation et initialisation de pygame
Comme nous le faisons avec tout module en python, nous devons importer pygame:
import pygame
Nous initialisons ensuite tous les modules pygame importés:
pygame.init()
Ceci est utilisé pour initialiser tous les modules pygame. Sans cela, les modules ne fonctionneraient pas
Définition des constantes
Nous définissons ensuite des constantes ici:
WIDTH = 300
HEIGHT = 200
SCREEN = pygame.display.set_mode((WIDTH, HEIGHT))
Les constantes WIDTH
et HEIGHT
permettent de créer une fenêtre de 300 pixels de largeur et de 200 pixels de hauteur. La fonction utilisée dans SCREEN
, pygame.display.set_mode((WIDTH, HEIGHT))
, définit le mode d'affichage et renvoie un objet Surface . Notez comment les paramètres de cette fonction sont les constantes WIDTH
et HEIGHT
définies précédemment.
Définition du nom de la fenêtre
Nous utilisons ensuite cette fonction pour changer le nom de la fenêtre en My Game:
pygame.display.set_caption('My Game')
Définir les couleurs
Nous définissons ensuite 6 couleurs utilisables dans notre fenêtre:
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)
YELLOW = (255, 255, 255)
Lors de la définition des couleurs, nous avons mis 3 valeurs comprises entre 0 et 255. La classe pygame.Color utilise normalement ce format:
COLOUR = (r, g, b, a)
Lorsque le paramètre r définit la valeur rouge de la couleur, le paramètre g définit la valeur verte de la couleur et le paramètre b définit la valeur bleue de la couleur. Le paramètre a définit la valeur alpha de la couleur.
Nous donnons alors cette commande:
SCREEN.fill(RED)
Ceci est une fonction pygame.Surface.fill qui remplit l'objet Surface, notre écran, avec la couleur rouge.
Utiliser pygame.display.flip ()
Nous utilisons alors cette fonction
pygame.display.flip()
Cela rend fondamentalement tout ce que nous avons dessiné à l'écran Surface visible et met à jour le contenu de l'affichage entier. Sans cette ligne, l'utilisateur ne verrait rien sur son écran pygame.
La boucle du jeu
Les prochaines lignes sont ce qu'on appelle une "boucle de jeu".
Pour commencer, nous créons une variable et la rendons vraie:
is_running = True
Pour que nous puissions commencer notre boucle while:
while is_running:
qui courra tout au long du jeu.
Dans sa forme la plus élémentaire, pygame a des "événements" qui prennent les entrées de l'utilisateur, par exemple une pression sur un bouton ou un clic de souris. Pygame gère ces événements via une file d'attente d'événements. Nous pouvons obtenir ces événements de la file d'attente des événements avec ceci pour la boucle:
for event in pygame.event.get():
Ce qui passe essentiellement par une liste d'événements, notre file d'attente d'événements. Ce sont les 2 lignes suivantes:
if event.type == pygame.QUIT:
is_running = False
Cela fera en sorte que lorsque l'utilisateur appuie sur le bouton de sortie dans le coin supérieur, l'événement avec le type pygame.QUIT
se produit.
Cela termine la boucle while, car is_running
est maintenant False
et le script passe à la ligne finale:
pygame.quit()
Ce qui désinitialise les modules pygame.