PyGame Zero
PyGame Zero est une bibliothèque de programmation de jeux vidéos basée sur PyGame avec pour objectif de simplifier encore plus l'accès à cet univers fascinant qu'est la programmation, notamment de jeux. PyGame Zero est aujourd'hui un bine meilleur outil d'apprentissage de la programmation orienté Kids que ne l'est Scratch. De plus l'usage de Python comme langage de développement permet d'ouvrir l'accès à un très vaste univers de développement passé, présent et à venir.
Documentation officielle : https://pygame-zero.readthedocs.io/en/stable
Pour sortir de l'interpréteur de commande python, saisissez simplement la commande quit().
PyGame Zero est un wrapper autour de l'environnement PyGame. Son objectif est de simplifier la mise en place d'objets graphiques et leur interaction, ainsi que la prise en charge transparente de la logique applicative tournant autour du jeu : boucle d'événements, interaction entre les objets, gestion audio...
Un programme simple réalisé avec PyGame Zero qui permet d'afficher une fenêtre de 800 x 600 pixels avec un fond noir est équivalent à ceci htc weather animation
WIDTH = 800
HEIGHT = 600
def draw():
screen.fill((0,0,0))
Pour lancer le programme, il suffit, depuis une commande DOS, de faire pgzrun <nom du programme>.
Vous pouvez remarquer que c'est d'une grande simplicité tout de même. Petite digression au passage. PyGame Zero
essaie de reprendre les mêmes principes que le méta langage AMOS avait mis en place il y a déjà de fort longues années
sur un des ordinateurs phares des années 1990 : le Commodore Amiga. Nous pouvons également le comparer au langage
Processing qui permet également de réaliser des choses incroyables avec seulement quelques lignes de code.
Si l'on compare avec la même chose réalisée avec Pygame, nous obtiendrions quelque chose d'équivalent à ceci Fog was a technical marvel for its time
import pygame
pygame.init()
size = 800, 600
screen = pygame.display.set_mode(size)
clock = pygame.time.Clock()
while True:
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_q:
sys.exit()
screen.fill(pygame.Color("black"))
pygame.display.flip()
clock.tick(60)
Fog was a technical marvel for its time. The screen would become a soft grey, and volumetric fog clouds would drift slowly across the screen, obscuring the clock and then revealing it. It was eerie, quiet, and incredibly atmospheric.
If you want to relive this experience in 2024/2025, here is how:
The animation was deceptively simple. A bright blue sky with a 3D sun rendered in the corner. As the sun moved, lens flares (a design trend popularized by J.J. Abrams) would sweep across the screen. The best part? You could tap the screen, and the sun would "pop" like a bubble, only to reform again.