VIII) Le module Pyxel
1) Présentation de Pyxel
a) Pourquoi Pyxel
Le module pyxel a été conçu pour permettre de programmer des jeux rétro.
Volontairement, on a choisi de rendre minimales les possibilités graphiques. Il y a ainsi uniquement 16 couleurs, ainsi qu'une zone graphique petite. On veut se mettre dans les mêmes conditions matérielles qu'à l'époque des premiers jeux : Tetris, Pong, Pacman, ...
Vous pouvez consulter la documentation du module pyxel.
b) Comment l'installer
- Depuis Thonny, se rendre dans "Outils ---> Gérer les paquets".
- Rechercher le paquet "pyxel" et installer le.
c) L'utiliser en ligne
- Sans aucune installation, le site pyxelstudio.net vous permettra de créer des projets, de les exécuter et de les partager.
- Vous pouvez aussi découvrir des projets existants.
2) Quelques repères pour débuter
a) Les couleurs
Il n'y a a que 16 couleurs par défaut.

Ainsi, l'instruction pyxel.cls(0) remplira l'écran de la couleur 0, c'est-à-dire de noir.
b) Se positionner
Le système de coordonnées (x,y) dans Pyxel a :
- pour centre : le coin en haut à gauche de la fenêtre ;
- pour axe des abscisses : le bord haut de la fenêtre ;
- pour axe des ordonnées : le bord gauche de la fenêtre, cet axe étant dirigé vers le bas.
Ainsi, voici les cordonnées des 4 angles de la fenêtre :
- en haut à gauche :
(0,0); - en haut à droite :
(width,0); - en bas à gauche :
(0,height); - en bas à droite :
(width,height).
De même, l'instruction pyxel.rect(x, y, w, h, col) utilise le point (x,y) comme le coin haut gauche du rectangle à tracer.
c) Utiliser des variables globales
Il est important de déclarer des variables globales pour ensuite pouvoir y accéder dans toutes les fonctions, sans oublier le mot-clef global.
3) Utiliser les dictionnaires
En terminale, vous allez utiliser la programmation objet. Mais pour l'instant, l'usage des dictionnaires peut faciliter la compréhension et l'utilisation de votre code.
L'idée est de regrouper dans un dictionnaire les différentes informations d'un "objet" de votre programme.
a) Un exemple de programme sans dictionnaires
Dans ce code, le vaisseau n'a pas d'existence propre dans la programmation. Il y a bien les variables vaisseau_x et vaisseau_y mais elles ne sont pas reliées entre elles.
b) Sa traduction avec les dictionnaires
Cette fois-ci, le dictionnaire vaisseau est créé et peut contenir autant d'informations que l'on veut, bien concentrées à un seul endroit.