Un framework per programmare videogiochi 2D in C++ con SDL3.
Important
Questo è il repository ufficiale dell'insegnamento di Algoritmi e Programmazione dei Videogiochi del corso di laurea in Ingegneria Informatica e delle Telecomunicazioni dell'Università di Cassino. La cartella Drive del corso, che include slide, esercizi e codice sorgente, è pubblicamente accessibile a questo indirizzo.
La wiki raccoglie le guide al framework e ai quattro prototipi. Nel menu laterale trovi gli approfondimenti e i diagrammi delle classi di ciascun progetto.
In tutti e quattro i prototipi, V attiva/disattiva musica ed effetti sonori (anche nei menu e in pausa; escluso l’inserimento di testo nell’editor).
Libreria header-only di utilità condivise: vettori e forme geometriche, test di collisione, autotiling ed estrazione dei fotogrammi dalle spritesheet, oltre a funzioni per tempo, matematica, file e SDL.
Geometria e collisioni · Autotiling e spritesheet · Esplora il codice
Infrastruttura comune dei quattro prototipi: game loop, scene, oggetti, rendering, sprite, camera, audio e interfaccia. Include un editor visuale e il caricamento dei livelli JSON tramite LevelData; ciascun gioco definisce la propria fisica e le proprie regole.
Guida al core · Editor e livelli · Diagramma delle classi
Platform 2D ispirato a Super Mario Bros, con movimento e collisioni AABB implementati da zero. È il punto di partenza per studiare la fisica personalizzata e le interazioni di un platform.
Guida al prototipo · Diagramma delle classi
Platform 2D ispirato a Super Mario Bros 3, con fisica personalizzata estesa alle pendenze: salita rallentata, scivolamento a riposo e piattaforme attraversabili dal basso. Riusa core, utils e formato JSON condivisi; il livello include rampe triangolari senza sprite.
Guida al prototipo · Diagramma delle classi
Platform 2D con simulazione fisica affidata a Box2D 3.x: corpi rigidi, forme composte, pendenze e contatti. Mostra come integrare un motore fisico esterno con scene, rendering e servizi del core.
Guida al prototipo · Diagramma delle classi
Prototipo con vista dall'alto ispirato a The Legend of Zelda: A Link to the Past. Combina collisioni personalizzate, combattimento, NPC, pathfinding, dialoghi e portali fra scene.
Guida al prototipo · Diagramma delle classi
Effetti visivi applicati al frame completo, con elaborazione CPU o GPU. Il modulo raccoglie le risorse per il post-processing GPU usato dalle finestre del core.




