Exercices C++ et casse-brique
Travaux de C++ de 2024-2025 : POO, machines à états, scènes SFML, threads, client-serveur TCP, architecture entité-composant, et un casse-brique en groupe
C++ · SFML · POO · State Machine · Threads · Sockets · Team Project
Les exercices et TP de C++ de l'année 2024-2025 au Gaming Campus, du premier jour d'encapsulation jusqu'à une architecture entité-composant.
Contexte
Une série de petits dépôts, un par exercice ou par TP, sur six mois. Le seul projet de groupe est le casse-brique SFML de novembre 2024.
Ce que j'y ai fait
Les bases de la POO en C++, une machine à états, des scènes sur le moteur LightEngine, des threads, un client et un serveur TCP, une architecture entité-composant, et ma version du casse-brique.
Liens
- Encapsulation-C (bases et encapsulation)
- Exo-Full (exercices de synthèse)
- Exo-C-- (hiérarchie d'entités)
- InventaireExo (inventaire)
- CasseBrique-Final (casse-brique, une branche par membre)
- Tp1-StateWeapon (machine à états)
- Tp2-PvZ (Plants vs Zombies)
- Test-ShootEmUp (shoot'em up)
- ExoThread (threads)
- ExoServClient (client-serveur TCP)
- TestDirectX (architecture entité-composant)
Les travaux
| Période | Travail | Contenu |
|---|---|---|
| Oct. 2024 | Bases et encapsulation | Classes Point, Entity, Player, interface IAlive, héritage |
| Oct. 2024 | Exercices de synthèse | Vector2, Integer, hiérarchie Entity → Mob / Player / BreakableObject, World |
| Oct. 2024 | Inventaire | Inventaire en console avec poids et capacité maximale |
| Nov. 2024 | Casse-brique (groupe de 3) | SFML : briques explosives, bonus et pièges, effets sur la balle et la raquette, niveaux en fichiers, menus, musique |
| Nov. 2024 | TP StateWeapon | Arme pilotée par une machine à états (State : Start / Update / End) |
| Nov. 2024 | TP Plants vs Zombies | Scène PvZ (plantes, zombies) sur le moteur LightEngine (SFML) |
| Déc. 2024 | Shoot'em up | Vaisseau et ennemis sur LightEngine (SFML) |
| Janv. 2025 | Threads | Classe Thread et threads enfants |
| Janv. 2025 | Client-serveur | Serveur et client TCP Winsock (socket, bind, listen, accept), un thread par côté |
| Févr. 2025 | Architecture EC | Entity, Component, Transform, Renderer, puis une passe d'optimisation |
Casse-brique
Trois versions (une par membre du groupe) fusionnées dans un même dépôt. La version de ma branche contient trois types de briques spéciales, douze effets de balle (vitesse, taille, perçage, direction aléatoire, invisibilité, multiplication, inversion, téléportation, division…), quatre effets de raquette, un générateur et un gestionnaire de niveaux, un menu principal et un menu pause.