ISCRIZIONI APERTE PER OTTOBRE 2023!
Contattaci per ricevere uno sconto esclusivo!
Fai del Videogioco la tua professione: segui le lezioni in aula oppure in una soluzione 100% online, crea un videogioco completo, inizia la tua carriera nel gaming!
Vuoi saperne di più? Contattaci!
Il metodo
Il Corso Annuale di Game Design & Development si prefigge l’obiettivo di formare figure professionali qualificate tramite un approccio estremamente pratico alla materia, legato alla creazione di prototipi e alla stilatura di documenti di design altamente specializzati, oltre a uno studio metodico e rigoroso dei game engine di riferimento, ovvero Unity e Unreal Engine. Partendo dai linguaggi rispettivamente parlati dai due software, ovvero C# e C++, lo studente viene introdotto alle regole e alla logica sottostanti al codice.
Le lezioni si divideranno tra sessioni teoriche, in cui si studieranno le metodologie della disciplina, e sessioni pratiche, in cui si impareranno le basi del development e si redigeranno documenti dettagliati, differenziandoli tra pitch (più sintetici e formali) e documenti interni, utili a definire in maniera concentrata tutti gli elementi del gioco (narrativa, art direction, interfaccia, meccaniche, comandi, ecc.).
Una volta compresa profondamente la natura del codice e avendo fatta propria la capacità di sviluppare comportamenti originali tramite la creazione di script, lo studente viene avvicinato anche alle funzionalità avanzate di Unity e Unreal Engine. Lo scopo è permettere alla classe di plasmare il proprio universo di gioco in ogni suo aspetto.
Una formula ibrida
Con oltre 500 ore di lezioni, oltre a imparare la necessaria preparazione teorica, svilupperai da zero il tuo videogioco, mettendo realmente in pratica le conoscenze acquisite! Frequenta le lezioni in una formula 100% online oppure presso la nostra sede di Via Cornelia 498 e mettiti subito alla prova, seguito da docenti che lavorano davvero nel settore.
Requisiti
Per partecipare al Corso Annuale di Game Design & Development non sono richieste conoscenze pregresse. Tutte le nozioni della materia verranno fornite durante il percorso formativo, partendo dalle basi conoscitive.
Programma del corso
Introduzione al Game Design
- Generi di videogame: caratteristiche, punti di forza e di debolezza
- FPS
- Platform
- Adventure
- Puzzle
- Strategy
- Simulation
- Casual gaming
Piattaforme e target di riferimento
- PC
- Console
- Mobile
- ”Cross” reality
Tipologie di giocatore
- Sistemi di controllo: punti di forza e di debolezza
- Mouse e tastiera
- Gamepad
- Controlli mobile
- Controlli “touch”
- Sensori
- Altre periferiche di gioco
Modelli di business: punti di forza e di debolezza
- Freeware
- Premium
- Free to play
- IAP
Teoria dei giochi
Technical Game Design
Dare forma alle idee
Il processo di sviluppo: fasi
Brainstorming e prototipazione
Il game loop: spiegazione ed esempi
Meccaniche di gioco: casi di studio
Sistemi in-game
- Strumenti di analisi
- Interazioni e affordance
- Libertà ed engagement
- Casi di studio
Feedback loops
- Positivi
- Negativi
- Casi di studio
Matematica e Game Design
Incertezza e casualità nei giochi
- Tipologie di “incertezza”
Simulazioni nei giochi
Psicologia dei giocatori
- Bias cognitivi
- Comportamento economico
- Avversione al rischio
- Teoria dell’utilità
- Teoria della prospettiva
- Endowment effect
- Sistemi di premio e rinforzo
Come rifinire il gioco attraverso esempi e applicazioni
- Curve d’apprendimento e tutorial
- Curve di difficoltà
- Bilanciamento
- Testing, iterazione e rifinitura
Strumenti e documenti di design
Strumenti per il game design
- Google Suite/Office
- Miro/Figma
- Photoshop/GIMP
- Motori di gioco
Documenti di design con esempi
- Pitch
- GDD
- Business plan
- Documenti tecnici
Game design per il marketing
Core, Hardcore, Casual, e Hyper-casual gaming
Target: definizione e analisi
- Modelli di giocatore
- Il sistema PEGI
- Accessibility nei giochi
Game Analytics
- Test A/B
- Live Operations
- ”Games as a service”
Progetto conclusivo
- Realizzazione di un pitch document di tipo professionale relativo ad un progetto pensato
e progettato dallo studente durante lo svolgimento del corso
Narrative Design
- Definizione del ruolo di Narrative Designer
- Individuare e soddisfare i bisogni narrativi di un videogame
- Arricchire l’esperienza ludica
- Trasmettere in modo efficace il setting
- Comunicare la lore senza appesantire
- Portare freschezza nelle storie
- L’importanza di sapere scrivere
- L’importanza di avere l’occhio da regista
- Dialoghi, dialoghi, dialoghi
Le finalità della Narrazione e delle storie
- La comunicazione Emotiva
- L’importanza della Storia e della Narrazione nella società attuale e nei videogame in
particolare
- La potenza della narrazione transmediale
Anatomia di una storia
- L’importanza delle Storie
- L’immaginario narrativo
- L’organizzazione delle idee
- L’impostazione del testo
Tecniche degli scrittori professionisti
- Mostrare e non dire
- Il calco narrativo
- La costruzione del progetto
- Il testo narrativo
- L’ordine della narrazione
- Il narratore
- Il punto di vista
- I personaggi
- Il tempo di storia e narrazione
- Lo stile
- Le tecniche narrative
L’Arco di crescita/Trasformazione del Personaggio
- L’Eroe dai mille volti di Joseph Campbell e il Monomito di Christopher Vogler
- La storia inizia e finisce con il cambiamento del protagonista
- Il Difetto Fatale (Fatal Flaw)
- Il Difetto Tragico
- Il conflitto esteriore e il conflitto interiore
- Plot e Subplot
- Il Viaggio dell’Eroe e le sue mille applicazioni transmediali
- In letteratura
- Al Cinema
- Nei videogame
Come scrivere storie interessanti?
- Scrivere come “mestiere” vs. Scrivere come ”dovere”
- Come trovare l’ispirazione
- Come creare personaggi coinvolgenti
- Workshop: Storyteller, un gioco di carte per trovare l’ispirazione
Creare mondi interessanti (Worldbuilding)
- È più importante la storia o il mondo entro la quale si svolge?
- Creazione di mondi bottom-up vs Creazione top-down
- La coerenza
- Semplicità e trascendenza nei mondi creati
- Come creare un sistema di divinità/magia/tecnologia sci-fi
- Come creare differenti culture che interagiscono
- Come gestire la situazione geopolitica e le sue conseguenze sulla storia
Creare “avventure” interessanti all’interno di un mondo.
- Main Quest o Side Quest?
- La narrazione per “missioni” all’interno di un videogame
- Le sette stelle del firmamento delle avventure
1. Sconfiggere il Mostro
- Anticipazione e Richiamo
- La fase del Sogno
- La frustrazione
- La fase dell’Incubo
- Scontro mortale
- A volte ritornano...
2. Dalle Stalle alle Stelle
- La tristezza iniziale
- I primi timidi successi
- La crisi centrale
- Lotta per l’indipendenza/Prova Finale
- Finalmente, il successo
3. La “Ricerca” di qualcuno/qualcosa [The Quest]
- La chiamata
- Il viaggio
- La frustrazione
- La prova finale
- Ritorno con l’Elisir
4. Andata e Ritorno dal Paese delle Meraviglie
- Anticipazione/Caduta nell’Altro Mondo
- La fase della Meraviglia
- La frustrazione
- L’incubo
- La fuga e il sospirato ritorno
5. La Caduta e la Rinascita
- La caduta nelle Tenebre
- La calma apparente
- Il ritorno della minaccia oscura
- L’oscurità sta per trionfare
- La miracolosa redenzione
La Tragedia
- Il forte desiderio
- La scelta verso la perdizione
- La discesa verso l’abisso
- Il destino inevitabile
- La morte tragica
La Storia d’Amore (commedia romantica)
- Qualcosa non va fra i protagonisti
- Il destino si accanisce
- I problemi aumentano
- La svolta inattesa
- Happy ending
- Workshop: Creazione di Side Quest e Main Quest
Le storie Interattive/a finali multipli
- L’origine delle storie interattive a finali multipli: libri-gioco e giochi di ruolo
- Le storie interattive nei videogame ieri e oggi
- I videogame come “macchine che creano storie”
Come creare ottime Storie Interattive
- Unità vs Frammentarietà
- Come settare il giusto numero di opzioni/scelte/paragrafi
- Come mettere un numero giusto di finali che NON deludano
- Come tenere alto il livello di pathos
- La teoria della “collana di perle” (old but gold)
- L’arte del “controllo indiretto” sul giocatore
- Come ridurre le milioni di opzioni possibili
- Come fornire forti motivazioni
- Come lavorare sull’interfaccia di gioco (ove possibile)
- Come sfruttare la grafica a proprio vantaggio
- Come far lavorare i NPC per te
- Come sfruttare la musica e gli SFX
Le SCELTE: come farle bene
- I quattro tipi di scelte: Determinanti, Di Trama, SDV e Finte
- Scelte intenzionali (SI) vs. “Scelte determinate da un valore” (SDV)
- Bilanciamento, intenzionalità e conseguenze nelle SI
- Come settare il giusto valore per le SDV
- Come evitare la trappola della stella a quattro punte
- Come evitare la trappola del “piove sul Bagnato”
I FINALI: come farli bene
- Come scegliere chi accontentare e chi scontentare
- Come proporre molte soluzioni per un unico problema
- Come scegliere quale obiettivo raggiungere fra i tanti possibili
IL PROGETTO della storia: come farlo bene
- Come utilizzare al meglio le mappe mentali
- E se nessuno vedesse mai questa scena?
- Come utilizzare al meglio la ramificazione precoce
- Come utilizzare al meglio la ramificazione tardiva
- Come rendere ogni scelta un piccolo passo verso un finale
- Come dare ad ogni finale il suo momento giusto
- Come gestire il fattore random e il controllo indiretto
- Come rendere memorabile ogni tipo di finale (anche i peggiori)
WORKSHOP: Creazione di un videogame/app testuale incentrato su una storia interattiva
- Il progetto Infinity Mundi e le App interattive touch di nuova generazione
- La guida per gli autori di Infinity Mundi (in Italiano e Inglese)
- Download e installazione del programma Validator di Infinity Mundi (Windows/MacOS)
- Creazione guidata di una breve storia interattiva per cellulari
COMANDI BASE
- Scrivere il testo di un #paragrafo della app
- Il comando @scelta
- I finali @endOfTheStory
COMANDI AVANZATI
- Scelte con requisiti @req
- Scelte nascoste @nascondi
- Modificare i valori: @modificatore e @dopomodifica
- Inserire immagini con @pix
- Salvare i progressi con @salvataggio
- Immettere dati con @inputnumero e @inputtesto
- Distintivi e Achievements con @distintivo
- Gestisci ogni situazione con @se... @allora... @altrimenti
- Memorizza valori segreti nella @blackboard
- Gestisci ogni tipo di parametro nella @whiteboard
- Aggiungere @music e @sfx
- Gestisci un @inventario completo
GESTIRE L’ALEA
- Lancia i @dadi 3d
- Gira la ruota (@spinner) del destino
FEATURE SPECIALI
- Metti ansia con una @scelta-timer
- Acuisci il mistero con una @scelta-segreta
- Combatti i nemici in tempo reale con il @combat-system
- Personalizza il tuo personaggio con @character-creation-choices
- Traccia simboli arcani sullo schermo con @test-gesture
- Dai un punteggio (@rank) alle scelte e crea una classifica finale
- Crea una mappa interattiva (@map) da esplorare
Game Development
Unity | Strumenti e tecniche
- Ciclo di vita di un software
- Cause del fallimento dei progetti software
- Verifica della fattibilità
- Budget di un progetto
- Struttura di un progetto software: GUI e codice
- Interfacce utente: diegetiche, non diegetiche, spaziali e meta
- Il team di sviluppo
- Strumenti software e licenze
- Formati di immagine Raster e Vettoriale
- Dispositivi hardware: desktop, laptop, smartphone e tablet
- Gantt e PERT
- Cosa sono Unity 3D e Unreal Engine
- Cosa non sono Unity 3D e Unreal Engine
- Requisiti Hardware e Software
- Unity 3D e Unreal Engine: differenze e similitudini
- Progettazione
- Tipologie di videogiochi
- GIT e sistemi di controllo versione distribuito
- Discord, Slack, Trello e altre piattaforme di collaborazione e comunicazione
- API, OpenGL, WebGL, Vulkan, Metal e DirectX
- Graphics pipeline
- Creazione livelli e contenuti (statica, “casuale” e procedurale)
- FBX e formati grafici
- Shaders
- Maps (Normal, bump, height e displacement etc)
- Camera
- FPS, refresh rate e vsync
Unity | Fondamenti di programmazione in C#
- Fondamenti di programmazione
- Diagrammi di flusso
- C#
- Utilizzo di sistemi di VCS
- Buone pratiche di stile
- Bug e glitch
- Tipi di dato
- Camel case
- Overflow
- Costanti
- Magic numbers
- Operatori
- Blocchi di codice
- Stringhe di testo
- Commenti
- Testing
- Strutture condizionali
- Tabelle di verità
- Cicli (for, while e do-while)
- Array
- Eccezioni
- Event e callback
- Rappresentazione dei colori
Unity | C#: sviluppo di progetti 3D e 2D
- Unity Hub
- Installare Unity 3D
- L’interfaccia grafica di Unity
- Procedure per la creazione e distribuzione
- La scena
- GameObject e Componenti
- Il componente Transform
- La telecamera
- Illuminazione
- Flussi di lavoro
- Importazione di modelli
- Le basi della CG
- Le geometrie standard
- Shaders, materiali e texture
- Shader Graph
- Creare un componente/script
- Visual Studio e Visual Studio Code
- I metodi Start, Awake e Update
- Modificare la posizione
- Modificare la rotazione
- Modificare la scala
- Interpolazione lineare
- Creare variabili ed esporle nell’inspector
- La fisica in Unity
- La forza di gravità
- Gestire le collisioni di tipo Collision e Trigger
- Gestire l’interazione con gli elementi della scena
- Materiali fisici
- Fixed Update
- Gestire più scene
- Passaggio tra Scene
- Coroutine
- Prefabs
- Animazioni
- UI system
- Post processing
- Pubblicazione per desktop, web e mobile
- Realizzazione di progetti 2D e 3D
Unreal Engine | Introduzione ad Unreal
- Cos’è un Game Engine
- Le possibilità e capacità di Unreal
- Unreal, navigazione base e interfaccia
- Struttura di un progetto Unreal
- Come organizzare un progetto
- Come orientarsi
Unreal Engine | Fondamenti di Real Time Rendering
- PBR Rendering
- Deferred Rendering
- Forward Rendering
- Introduzione ai Materials
- Introduzione al Lighting
- Introduzione alle Shadows
Unreal Engine | Fondamenti di OOP e Programmazione Blueprint
- Hello World
- Variabili e memoria
- Controllo di flusso
- Contenitori e Cicli
- Funzioni e Macro
- Oggetti e Classi
- Eredità
- Actors e Pawns
- Unreal Gameplay Framework
- Esercizi
Unreal Engine | Introduzione alle Animazioni
- Introduzione alle animazioni
- Animation Blueprint
- Macchine a stato finito
- Notifiers
- Retargeting
- Impostare un personaggio da zero
- Esercizi
Unreal Engine | Programmazione in C++
- Fondamenti di algebra lineare
- Rivisitare cosa abbiamo fatto, da Blueprint a C++
- Headers e Cpp File
- Puntatore e Gestione della Memoria
- Equilibrare C++ e Blueprint
- Comunicare con i Blueprints
- UProperties Specifiers
- UFunction Specifiers
- Compiler Directives
- Custom Structs
- Best Practises
- Esercizi
Unreal Engine | Altre funzionalità
- Introduzione a UMG
- Introduzione a Sequencer
- Introduzione all’Audio
- Esercizi
Unreal Engine | Version Control
- L’importanza dei Version Control Systems
- Come impostare Version Control
- Come usare Version Control
- Esercizi
Unreal Engine | Programmazione Avanzata – Data-Driven Gameplay
- Il concetto dei Dati
- Data Containers
- Binding Data
- Leggere Dati da sorgenti
- Data Assets
- Best Practises
- Esercizi
Unreal Engine | Programmazione Avanzata – Artificial Intelligence
- Il concetto dell’Intelligenza Artificiale
- Behaviour Trees
- Blackboards
- NavMesh
- Pathfinding eNavigation
- Custom Decorators
- Custom Tasks
- Custom Services
- Modificare la NavMesh
- AI Debugging
- Esercizi
Unreal Engine | Lezioni Libere
- Intermediate Lighting
- Intermediate Shadows
- Advanced Material
- Advanced C++ Programming
- CI/CD
- DevOps
- Integrare UE4 con third-party libraries
- Advanced Sequencer
- Advanced Audio Systems
- Advanced UMG
- Procedural Content Generation
- Advanced Blueprints
- Platform Development
- Virtual Reality
- Augmented Reality
- Niagara e VFX
- Fondamenti di Virtual Production per in-game Cinematics
- Revisioni ed Esercizi
Scrivi una recensione pubblica