MASTER IN COMPUTER GAME DEVELOPMENT - UNIVERSITÀ DEGLI STUDI DI VERONA DIPARTIMENTO DI INFORMATICA FACOLTÀ DI SCIENZE MM FF NN

Pagina creata da Ludovica Corsi
 
CONTINUA A LEGGERE
UNIVERSITÀ DEGLI STUDI DI VERONA
   DIPARTIMENTO DI INFORMATICA
   FACOLTÀ DI SCIENZE MM FF NN

MASTER IN COMPUTER GAME
DEVELOPMENT

                                      1
UNIVERSITÀ DEGLI STUDI DI VERONA
             DIPARTIMENTO DI INFORMATICA
             FACOLTÀ DI SCIENZE MM FF NN

Livello primo

CFU 64

Direttore del corso
Andrea Fusiello (P.A.) Facoltà di Scienze MM. FF. NN. – Dipartimento di Informatica- Università di Verona

Comitato Scientifico
Andrea Fusiello (UniVR)
Matteo Cristani (UniVR)
Luca Viganò (UniVR)
Umberto Castellani (UniVR)
Paola Cesari (UniVR)
Paolo Giacomello (Idoru Srl)

Collegio dei docenti

                                                                                                        Università/Facoltà/
 Cognome Nome            Qualifica     SSD            Insegnamento al Master                      ore
                                                                                                        Dipartimento/Ente di
                                                                                                        appartenenza
 Andrea Fusiello         P.A.          INF/01         Fundamentals       of        Computer       24    Dip. di Informatica/ Fac.
                                                      Graphics                                          di Scienze MM FF NN
 Matteo Cristani         R.U.          INF/01         Fundamentals            of     Artificial   24    Dip. di Informatica/ Fac.
                                                      Intelligence                                      di Scienze MM FF NN
 Luca Viganò             P.A.          INF/01         Fundamentals       of         Software      24    Dip. di Informatica/ Fac.
                                                      Engineering                                       di Scienze MM FF NN
 Umberto Castellani      R.U.          INF/01         Fundamentals      of         Interaction    24    Dip.   di    Informatica/
                                                      Design                                            Facoltà di Lettere
 Federico Fontana        R.U.          INF/01         Sound Programming                           12    Dip. di Informatica/ Fac.
                                                                                                        di Scienze MM FF NN
 Davide Pensato          Esperto       n.a.           Sound Programming                           12    Idoru s.r.l
 Paolo Torelli           Esperto       n.a.           AI Programming                              12    n.a.
 Enrico Gasperoni        Esperto       n.a.           Physics Programming                         24    Milestone s.r.l
 Giorgio Ugazio          Esperto       n.a.           Network Programming                         24    Milestone s.r.l
 Roberto Toldo           Dottorando    n.a.           Graphics Programming                        24    Dip. di Informatica
 Giuseppe Maggiore       Esperto       n.a.           High-level Programming                      12    n.a.
 Diego Zamprogno         Esperto       n.a.           Tools Programming                           24    Idoru s.r.l
 Paolo Giacomello        Esperto       n.a.           Elements of Game Design                     24    Idoru s.r.l
 Diego Zamprogno         Esperto       n.a.           Game Engine Architecture                    24    Idoru s.r.l
 Paola Cesari            R.U.          M-EDF/01       MoCap Laboratory                            10    Dip. di Sc. Neurol. e Vis.
                                                                                                        / Fac. di Sc. Motorie.
 Diego Zamprogno         Esperto       n.a.           Programming Laboratory                      50    Idoru s.r.l
                                                      TOTALE ORE                                  348

                                                                                                                                 2
UNIVERSITÀ DEGLI STUDI DI VERONA
             DIPARTIMENTO DI INFORMATICA
             FACOLTÀ DI SCIENZE MM FF NN

Obiettivi formativi specifici
Il Master in Computer Game Development corso si rivolge a laureati in Informatica o Ingegneria Informatica -- dunque con
buone abilità di programmazione -- e si propone di formare programmatori di applicazioni videoludiche (videogame) ed
multimediali interattive.
Il corso è progettato per fornire nozioni legate alla realizzazione di videogiochi, con un approccio pratico, includendo corsi
con professionisti provenienti dall'industria dello sviluppo vero e proprio.

L’enorme sviluppo dei videogiochi trova sicuramente il suo elemento qualificante nelle tecniche di resa grafica al calcolatore,
sostenute dalla crescente potenza di calcolo messa a disposizione dalle unità di elaborazione grafica (GPU). Il livello di
realismo sempre più elevato non è però solo visivo ma coinvolge anche la riproduzione sempre più fedele dei movimenti
umani, la simulazione precisa della realtà fisica, e la crescente immersività della interazione – si pensi al caso Nintendo WII.
Inoltre i comportamenti naturali esibiti dai personaggi che popolano il gioco (oltre al giocatore) sono frutto di esperienze
maturate nel campo dell'intelligenza artificiale. Da questa breve introduzione si intuisce come la progettazione e la
programmazione dei videogiochi sia un’attività inerentemente multidisciplinare, che tocca diverse aree dell’informatica
(programmazione, ingegneria del software, grafica, elaborazione dei suoni, interazione uomo-macchina, intelligenza
artificiale), richiede solide basi in discipline matematiche e fisiche ed ha connessioni con la biomeccanica e le scienze umane
(narrativa, psicologia).

Un primo modulo di corsi -- di stampo accademico -- introduce alcune competenze irrinunciabili in Grafica, Intelligenza
Artificiale, Ingegneria del Software e Interazione Utente-Calcolatore. Il secondo modulo -- di stampo maggiormente
applicativo e legato allo sviluppo -- esamina le diverse specifiche competenze che entrano in gioco nella programmazione di
un videogioco, quali Grafica, Suoni, Fisica (simulazione), Reti (giochi in rete), Intelligenza Artificiale, strumenti per lo sviluppo
e linguaggi di alto livello. Un terzo modulo introduce nozioni sull'architettura di un motore di gioco (game engine) e sulla
progettazione di un videogioco.

Sono previste attività di laboratorio (dove gli studenti svilupperanno un videogioco vero e proprio) e stage in aziende del
settore.

Funzioni occupazionali
Il master ha l'obiettivo di formare sviluppatori di videogiochi e/o applicazioni multimediali avanzate, focalizzandosi sulle
tecnologie più recenti e con una particolare attenzione alle problematiche di lavoro in team. Sbocchi professionali:
- Sviluppo Videogiochi
- Sviluppo Applicazioni Multimediali
- Sviluppo Applicazioni Interattive Avanzate

                                                                                                                                   3
UNIVERSITÀ DEGLI STUDI DI VERONA
                              DIPARTIMENTO DI INFORMATICA
                              FACOLTÀ DI SCIENZE MM FF NN

Progetto generale di articolazione delle attività formative
Il Master è strutturato in 1600 ore di cui:
- 298 di didattica frontale;
- 150 di stage;
- 100 per la prova finale
- 50 di laboratorio guidato;
- le rimanenti ore in attività di studio individuale.

Le lezioni in aula si terranno nei giorni di:
     •    venerdi e sabato (mattina)

Scheda didattica del Master:

                                       SSD                             Insegnamento           CFU   Ore   CFU totali per
                                                                                                            modulo
                              INF/01 ING-INF/05     Fundamentals of Computer Graphics         4     24    16
                   Modulo 1

                              INF/01 ING-INF/05     Fundamentals of Artificial Intelligence   4     24

                              INF/01 ING-INF/05     Fundamentals of Software Engineering      4     24

                              INF/01 ING-INF/05     Fundamentals of Interaction Design        4     24

                              INF/01 ING-INF/05     Sound Programming                         4     24    24
                   Modulo 2

                              INF/01 ING-INF/05     AI Programming                            2     12

                              INF/01 ING-INF/05     Physics Programming                       4     24

                              INF/01 ING-INF/05     Network Programming                       4     24

                              INF/01 ING-INF/05     Graphics Programming                      4     24

                              INF/01 ING-INF/05     High-level Programming (XNA)              2     12

                              INF/01 ING-INF/05     Tools Programming                         4     24

                              INF/01 ING-INF/05     Elements of Game Design                   4     24    8
                   Modulo 3

                              I INF/01 ING-INF/05   Game Engine Architecture                  4     24

                              M-EDF/01              MoCap Laboratory                          1     10    6
     Laboratorio
                   Modulo 4

                              INF/01 INF-INF/05     Programming Laboratory                    5     50

                                                    Stage in azienda                          6     150

                                                    Prova finale                              4     100

                                                                                              64    598   TOTALE

                                                                                                                           4
UNIVERSITÀ DEGLI STUDI DI VERONA
             DIPARTIMENTO DI INFORMATICA
             FACOLTÀ DI SCIENZE MM FF NN

Sillabo:
Fundamentals of Computer Graphics.
L’insegnamento fornisce una panoramica sui fondamenti della Computer Graphics interattiva, con particolare attenzione alla
tipica pipeline di rasterizzazione OpenGL-like. Verranno trattati i seguenti argomenti: Vector and matrix math. Algorithms and
data structures. Rendering paradigms. Illumination models. The rasterization pipeline. Geometric processing. Hidden surface
removal. Scan-conversion.

Fundamentals of Artificial Intelligence
A.I. Methods: algorithms and complexity. Search: rational agents, toy-problems, path finding. Informed search: heuristics,
Algoritmi genetici, tecniche anytime, A*, SMA* algorithms. Adversary search: minimax, strategy computation. Planning: block
world, planning by search. Probabilità di base. Decisioni in situazione di incertezza – tecniche bayesiane, algoritmo di Pareto!.
Reti neurali!. Vaghezza e logica fuzzy.

Fundamentals of Software Engineering
L’insegnamento fornisce una panoramica sui principi scientifici e professionali di base della Ingegneria del Software, con
particolare attenzione alle diverse fasi della progettazione e realizzazione di sistemi software complessi su larga scala ("in the
large"): pianificazione, progettazione, modellazione e specifica, implementazione, collaudo e verifica, valutazione,
manutenzione.

Fundamentals of Interaction Design
L'insegnamento fornisce una panoramica sulle tecniche di design, realizzazione e valutazione di paradigmi di interazione,
principalmente di tipo grafiche o visuali. In particolare verranno analizzate le basi dell’interazione vera e propria in termini di
fattori umani, modello utente, stili di interazione e usabilità. Verranno inoltre introdotti paradigmi di interazione ("perceptual
interfaces") nei quali il calcolatore percepisce (tramite sensori visivi, magnetici etc...) i movimenti e l'intenzione dell'utente.

Sound Programming
Il suono è fondamentale nella realizzazione di sistemi multimediali. Il corso intende fornire un set minimo di basi e di
metodologie per la sintesi e l'elaborazione dei suoni. Dopo una breve introduzione alla psicoacustica, verranno presentate
alcune tecniche, pratiche, componenti, ed esempi di utilizzo del suono nei sistemi d'interfaccia uomo-macchina e nei
videogame. Con riferimento a questi ultimi, verranno trattati i seguenti argomenti: l'audio nel ciclo di produzione di un
videogame, categorie di suoni, formati audio e compressione (wav, mp3, ogg); suoni in streaming, suoni in ram; categorie di
SFX: one shot, loop; suoni 3D; formati per la musica: MIDI vs wav vs XM\MOD; SFX: animazione, codice, evento.

AI programming
Introduzione!. Inseguimento e fuga!. Movimento basato su pattern. !Flocking!. AI scriptata e motori di script. Finite State
Machines!. AI basata su regole.

Physics programming
Obiettivo del corso di Game Physics è quello di fornire le conoscenze di base per comprendere ed affrontare le
problematiche relative allo sviluppo di simulazioni fisiche all'interno dei videogames. Il corso prevede un primo modulo nel
quale verranno richiamati concetti base di matematica e fisica, cinematica e dinamica delle particelle e dei corpi rigidi,
rotazioni 3D e quaternioni. A suddette basi teoriche segue la trattazione riguardo l'utilizzo di tali concetti all'interno del
software, le architetture comunemente utilizzate e l'integrazione numerica delle equazioni determinate nel proprio modello,
con particolare attenzione ai sistemi molla-smorzatore. Il corso si conclude con un terzo ed ultimo modulo inerente
tematiche più avanzate, come la determinazione e la gestione delle collisioni, la dinamica dei veicoli ed i corpi deformabili,
con esempi pratici riguardanti soluzioni adottate correntemente in giochi tripla A.

Network programming
!L'insegnamento fornisce una panoramica sulle problematiche relative allo sviluppo di modalità di gioco Multiplayer. Il corso
 affronterà in una prima fase le problematiche di basso livello: Socket, UDP, TCP, protocolli custom con servizi TCP on
 demand. Successivamente si affronteranno le problematiche di Match Making, front-end e back-end. Creazione di
 sessioni di gioco, reporting di statistiche, VOIP, gestione di AI e spettatori. Cenni sulle Tecnichal Requirement Certification
 (TRC) specifiche delle varie piattaforme di sviluppo. Nel terzo, e più sostanzioso, modulo si affronteranno problemi "game-
 dependent" di gestione e dati di gioco, data integration, data estimation, latency avoiding, dead reckoning,
 bandwidth management, con esempi concreti nell'ambito di racing games. Eventualmente cenni sulle problematiche
 associate ai Massive Multiplayer Game.

                                                                                                                                 5
UNIVERSITÀ DEGLI STUDI DI VERONA
             DIPARTIMENTO DI INFORMATICA
             FACOLTÀ DI SCIENZE MM FF NN

High-level programming
L’obiettivo è illustrare strumenti di programmazione ad alto livello tipicamente impiegati nello sviluppo di videogame, come
ad esempio XNA di Microsoft.

Graphics programming
Il corso si propone di fornire, attraverso l'uso avanzato di XNA, una panoramica sulle potenzialità delle architetture a shader
programmabili, mediante la realizzazione di texturing avanzato, gestione dell'ombreggiatura e applicazione di filtri real-time e
post-processing. Verranno inoltre introdotti gli strumenti principali utilizzati nella stesura (NVidia FXComposer), nel profiling e
nel debugging (Pix) di shader in linguaggio HLSL.

Tools programming
Obiettivo del corso è focalizzare l'attenzione sull'importanza dei tools nel ciclo di sviluppo di un videogioco. Partendo dalla
conoscenza approfondita dell'ambiente di sviluppo utilizzato dai programmatori fino alla scelta e/o realizzazione dei molti
tools indispensabili al lavoro di grafici, musicisti e designer. Nello specifico verranno sottolineate le scelte da compiere nella
realizzazione di tools da usare all'interno del team di sviluppo, con cenni su usabilità dell'interfaccia, portabilità, affidabilità e
manutenibilità. Sarà altresì eseguita una panoramica sui principali linguaggi di programmazione più indicati nella realizzazione
di tools.

Elements of game design
Obiettivo di questo corso è di esplorare le tematiche del game design. Prevede una breve overview dell'attuale scenario dei
videogiochi, evidenziando le classificazioni e le meccaniche dei principali filoni.Significato del videogioco; design; interattività;
regole e game design patterns; analisi di un documento di design.

Game engine architecture
Obiettivo del corso è quello di focalizzare l'attenzione sui passi da compiere nello sviluppo di un videogioco completo. Le
scelte implementative non possono prescindere da attente analisi sul livello di specializzazione, manutenibilità, portabilità e
efficenza del software. Particolare attenzione verrà posta nella strutturazione del codice, nella condivisione delle scelte e nello
sfruttamento ottimale delle risorse a disposizione.

MoCap Laboratory.
In questo modulo di solo laboratorio lo studente farà esperienza con un sistema commerciale di motion capture (Vicon)
assistendo e partecipando ad una sessione di acquisizione comprendente le fasi di preparazione.

Programming laboratory
In questo laboratorion integrato vengono raccolte le attività di laboratorio relative ai corsi del modulo 2 ("programming").

Percentuale di frequenza obbligatoria
70%

Periodo di svolgimento
La didattica del Master si svolge da ottobre 2009 (settimana 41) a luglio 2010 (settimana 28). Il Master termina a ottobre
2010. Si prevedono 12 ore settimanali di didattica frontale e laboratorio, 8 il venerdi e 4 il sabato mattina.

Modalità di svolgimento delle verifiche periodiche e della prova o prove finali.
Verranno effettuate verifiche al termine di ciascun modulo, consistenti in un test scritto o orale, oppure nella consegna di un
elaborato per le attività di laboratorio.
La prova finale consiste nella discussione di un elaborato.

Posti disponibili
Il Master prevede un numero minimo di 10 iscritti per essere attivato ed un numero massimo di 15. Il numero massimo può
essere ridefinito -- prima della partenza del Master -- a fronte di una maggiore disponibilità di posti di stage.

Requisiti di accesso

                                                                                                                                    6
UNIVERSITÀ DEGLI STUDI DI VERONA
             DIPARTIMENTO DI INFORMATICA
             FACOLTÀ DI SCIENZE MM FF NN

Laurea (vecchio ordinamento) in Scienze dell’Informazione, Informatica, Ingegneria Informatica oppure Laurea (post-riforma)
in classe 26 (scienze e tecnologie informatiche), 9 (ingegneria dell'informazione)

Uditori
Non si prevede la frequenza di uditori.

Modalità di ammissione
I candidati verranno selezionati sulla base del curriculum vitae et studiorum e di un colloquio. Verranno valutati i seguenti
elementi (punteggio totale = 60):
    1.   Voto di Laurea (10 punti)
    2.   Attinenza della tesi di Laurea con le tematiche del Master (10 punti)
    3.   Portfolio (5 punti)
    4.   Presenza nel curriculum studiorum di corsi universitari attinenti alle tematiche del master (5 punti)
    5.   Colloquio motivazionale (20 punti)
    6.   Conoscenza lingua inglese (5 punti)
    7.   Altri titoli (5 punti).

Scadenze
Termine ultimo presentazione domande: 19 settembre 2009
Selezione: 29 settembre 2009
Pubblicazione graduatoria: 1 ottobre 2009
Termine ultimo pagamento iscrizioni ed eventuali rate: 9 ottobre 2009
Inizio corso: 16 ottobre 2009

                                                                                                                           7
UNIVERSITÀ DEGLI STUDI DI VERONA
             DIPARTIMENTO DI INFORMATICA
             FACOLTÀ DI SCIENZE MM FF NN

Tassa di iscrizione e contributo d’iscrizione.
La tassa di iscrizione è fissata in € 500.
Il contributo di iscrizione è fissato in € 3650.

Eventuali agevolazioni previste per i partecipanti meritevoli
Da stabilire compatibilmente con il bilancio.

Enti e/o soggetti esterni disposti a collaborare a vario titolo allo svolgimento
del corso
Idoru S.r.l. - Padova
Impressionware S.r.l. - Torino
Virtual Identity S.r.l. - Milano
Ubisoft S.p.A. - Milano
Milestone S.r.l. - Milano
FrameStudios S.r.l. - Longarone (BL)

Tutori
Non sono previsti.
Sede di svolgimento delle attività
Facoltà di Scienze MM FF NN, Strada Le Grazie, 15 - 37134 Verona

Sede amministrativa/organizzativa del corso
Dipartimento di Informatica, Strada Le Grazie, 15 - 37134 Verona
tel 045 802 7069 fax 045 802 7068
e-mail: game_dev@sci.univr.it

Informazioni
Post Lauream, Ufficio Master e Corsi di Perfezionamento
Via Paradiso, 6 – 37129 Verona Tel. 045 8425216/15 fax. 045 8425217
e-mail: segreteria.master@ateneo.univr.it (per informazioni di tipo amministrativo).

Dipartimento di Informatica, Strada Le Grazie, 15 - 37134 Verona
tel 045 802 7069 fax 045 802 7068
e-mail: game_dev@sci.univr.it (per informazioni sulla didattica).

web: http://www.scienze.univr.it/fol/main?ent=cs&tcs=M

                                                                                       8
Puoi anche leggere