Il corso mira ad illustrare le moderne architetture dei game engine ed a fornire soluzioni tecniche e metodologiche per la progettazione e realizzazione di videogiochi. Verranno esposte le basi matematiche e fisiche su cui si basano i game engine, per poi studiare l’anatomia di un game engine. Nel corso verranno utilizzati game engine oramai stabiliti come standard industriali, e sanno studiati gli aspetti tecnici quali programmazione, scripting, rendering hardware, interfacce utente, e servizi di backend. Nell’ambito del corso saranno anche esposte tematiche fondamentali per lo sviluppo efficace di un videogioco, come narrativa, storytelling, animazione e gameplay. Il corso cercherà di accoppiare gli aspetti metodologici con gli aspetti tecnologici attraverso lo sviluppo di concreti progetti software.
scheda docente materiale didattico
- The Game Narrative Toolbox, di Heussner, Finley, Brandes Hepler, Lemay
Programma
Il corso di Game Development, rivolto agli studenti della laurea triennale, intende fornire una preparazione multidisciplinare sui principi, le tecnologie e le metodologie alla base dello sviluppo dei videogiochi moderni. Il percorso si apre con un'introduzione al settore e alla sua evoluzione storica, affrontando successivamente i fondamenti matematici necessari allo sviluppo di applicazioni interattive e l'architettura dei principali motori grafici (Game Engine). Una parte centrale del corso è dedicata all'utilizzo delle piattaforme di sviluppo più diffuse, tra cui Unreal Engine, Unity e Godot, con particolare attenzione alla programmazione visuale attraverso Blueprint, alla progettazione delle meccaniche di gioco (Game Design), alla narrativa interattiva e allo sviluppo del gameplay. Vengono inoltre approfonditi la progettazione delle interfacce utente (UI), le tecniche di coinvolgimento e fidelizzazione dei giocatori (Player Engagement), la gestione dei servizi backend e gli aspetti legati alla privacy. Il programma affronta anche i fondamenti della programmazione orientata alle prestazioni, l'utilizzo di strutture dati efficienti, le architetture GPU e lo sviluppo di shader, oltre ai principi dell'animazione digitale e della simulazione fisica applicata ai videogiochi. Un elemento distintivo del corso è rappresentato dalla presenza di lezioni tenute da professionisti e ospiti di rilevanza internazionale, provenienti dal mondo dell'industria videoludica, tecnologica e della produzione artistica e multimediale. Si tratta di incontri con esperti che vantano una significativa esperienza professionale presso aziende e istituzioni di primo piano nel settore, offrendo agli studenti l'opportunità di confrontarsi direttamente con le competenze, le tecnologie e le metodologie utilizzate nei contesti produttivi reali. Tra le realtà rappresentate nelle precedenti edizioni figurano importanti realtà internazionali come Rocksteady Studios, Ubisoft e AMD, oltre a istituzioni di prestigio come il Conservatorio di Santa Cecilia. Il percorso didattico comprende inoltre lo studio delle architetture di rete e dei sistemi multiplayer, affrontando sia gli aspetti fondamentali della comunicazione in rete sia le problematiche più avanzate legate alla sincronizzazione e alle prestazioni. Infine, vengono introdotti i principi dell'intelligenza artificiale applicata ai videogiochi. L'obiettivo complessivo è fornire agli studenti una solida base teorica e pratica per comprendere e affrontare le diverse fasi dello sviluppo di un videogioco, favorendo l'acquisizione di competenze tecniche, creative e progettuali utili sia per proseguire gli studi sia per inserirsi professionalmente nell'industria videoludica.Prerequisiti
Programmazione, matematica di base.Testi Adottati
- Game Engine Architecture, di Jason Gregory- The Game Narrative Toolbox, di Heussner, Finley, Brandes Hepler, Lemay
Modalità Frequenza
Non obbligatoria.Modalità Valutazione
Progetto individuale o di gruppo. La valutazione degli studenti si basa sui descrittori di Dublino e tiene conto del livello di conoscenza, comprensione ed elaborazione critica degli argomenti trattati nel corso. Gli studenti che dimostrano di aver acquisito i concetti fondamentali e di saperli applicare in contesti semplici otterranno una valutazione sufficiente. I voti medi saranno assegnati a coloro che, oltre a padroneggiare le basi, mostrano capacità di analisi e rielaborazione autonoma di concetti più complessi. I voti più alti sono riservati agli studenti che evidenziano una comprensione approfondita, capacità di sintesi, spirito critico e autonomia nel risolvere problemi anche nuovi o non affrontati esplicitamente durante il corso.