Modèle de cours
Vol à voler aux couleurs
Les apprenants développent en 12 étapes successives un jeu simple inspiré de Flappy Bird avec frameCraft. Ils créent ainsi une fenêtre de jeu, un oiseau, une entrée utilisateur, la gravité, des obstacles, des collisions, des points, une difficulté croissante, une fin de partie et un redémarrage.

Objectif pédagogique
Cette maquette introduit progressivement à la création d'un jeu simple inspiré de Flappy Bird avec frameCraft, en reliant les objets visibles du jeu aux entrées, aux mouvements et aux états de jeu. Au cœur se trouvent la construction d'une fenêtre de jeu, la modélisation d'entités avec des colliders et des formes GFX, ainsi que l'implémentation structurée des règles pour la gestion, la gravité, les obstacles et les collisions. Le développement des compétences suit une progression allant du **montage de scène** à travers la **mouvement basé sur le temps** jusqu'à la **mécanique de jeu** avec points, difficulté croissante, Game Over et rechargement. Professionnellement, cette maquette relève de la création de jeux avec frameCraft et soutient particulièrement la compréhension en matière de modélisation, d'administration des états et d'implémentation progressive.
Points forts compétentiels
Cette maquette regroupe les axes professionnels et méthodologiques de la création de jeux basée sur frameCraft dans une progression claire.
- Modéliser la structure du jeu : La fenêtre de jeu, la scène, le montage de scène, le ciel, le sol et les décorations sont établis comme structure fondamentale frameCraft.
- Classer professionnellement les entités : Oiseau, sol, plafond et obstacles sont implémentés en tant qu'objets de jeu via l'entité, le collider, les tags et les formes GFX.
- Abstraire les entrées : Les entrées clavier et tactile sont regroupées sous forme d’actions et sécurisées contre les impulsions continues.
- Implémenter le mouvement basé sur le temps : La physique de l'oiseau et le déplacement des obstacles utilisent la vitesse, la gravité et ctx.dt pour une mise à jour indépendante du cadre.
- Gérer les collisions et les états : Déclencheurs de collision, tags et gestionnaires de collisions entraînent une fin de partie et mettent en pause la logique du jeu via un état de jeu sauvegardé.
- Réutiliser les objets: Les obstacles sont gérés comme des pools d'entités numérotées, déplacés de manière synchronisée et répositionnés après leur sortie de l'écran.
- Élargir la mécanique du jeu: Points, comptage unique par obstacle, difficulté croissante, feedback visuel et rechargement complètent le cycle de jeu.
Structure des composants
Les composants développent le prototype, passant d'une scène statique à la figurine jouable et sa physique, puis aux logiques d'obstacles, au comptage de points, au balancement et enfin au rechargement.

Structure de base avec ciel et sol
Le composant établit la structure fondamentale du monde de jeu futur en définissant SPIEL, SZENE, constantes, ciel, sol, graphismes rectangulaires et une règle vide.

L'oiseau apparaît
Le composant introduit l’oiseau comme figurine centrale du jeu et relie entité, déclencheur de collision, logique de centre, constantes et fonctions graphiques préparées.

Battement d’ailes avec actions
Le composant abstrait les entrées clavier et tactile en une action de battement d’ailes et introduit un verrouillage pour éviter les impulsions multiples.

Physique d'oiseau avec gravité
Le bloc ajoute une physique basée sur le temps en stockant vogel_vy dans ctx.vars, en le modifiant selon la gravité et en mettant à jour la position y avec ctx.dt.

Collision et Game Over
Le bloc relie les tags, les trigger-colliders, les gestionnaires de collision et le jeu_zustand afin que les contacts avec des objets dangereux déclenchent l'état Game Over.

Premier couple d'obstacles
Le bloc étend le monde de jeu avec un couple de tuyaux statiques et rend la calculabilité du haut tuyau, du bas tuyau et de l'espace commun compréhensible.

Obstacles en mouvement
Le bloc transforme le couple d'obstacles en un déplacement synchrone vers la gauche et utilise tempo ainsi que ctx.dt pour une animation basée sur le temps uniquement dans l'état courant.

Réutilisation des obstacles
Le bloc implémente la réutilisation en remplaçant le couple de tuyaux existant à droite après qu'il ait quitté l'écran et en mettant à jour avec une nouvelle ouverture.

Plusieurs paires de tuyaux
Le bloc élargit la logique des obstacles à un pool d'entités avec plusieurs paires de tuyaux numérotées, boucles, espacements stables et recyclage derrière le tuyau le plus éloigné.

Compter les points une seule fois
Le bloc ajoute un comptage robuste des points, où chaque paire d'obstacles ne compte qu'une seule fois après avoir été complètement traversée par le oiseau, via pipe_gezaehlt.

Augmenter la difficulté
Le bloc lie les points à l'équilibre du jeu, en ajustant le rythme et la taille des espaces via des constantes, clamp et affichage HUD.

Finaliser Flappy Color Flight
Le bloc intègre les motifs de couleurs et d'espaces, les collisions d'obstacles, l'interface Game Over et le redémarrage avec verrouillage pour un cycle complet du jeu.
Les éléments clairement interconnectés rendent les objectifs pédagogiques, les concepts techniques et les mécanismes de jeu transparents. Ainsi, cette modélisation s'intègre facilement dans des séquences d'enseignement sur la création de jeux avec frameCraft.
Grâce à un accès démo, vous pouvez tester ce modèle et adapter ses composants à votre groupe d'apprentissage. Ainsi, la structure pédagogique reste intacte, tandis que les priorités et l'étendue restent flexibles.