Computer Game Developer Piano del corso - in collaborazione con

Pagina creata da Roberto Grillo
 
CONTINUA A LEGGERE
Computer Game Developer Piano del corso - in collaborazione con
Computer Game

Developer

Piano del corso

              in collaborazione con
Computer Game Developer Piano del corso - in collaborazione con
Computer Game Developer Piano del corso - in collaborazione con
Developer
Computer Game Developer Piano del corso - in collaborazione con
Introduzione

Questo corso è progettato per gli studenti interessati ad entrare nel mondo dello sviluppo informatico.

Tuttavia, non è pensato solo per i grandi fanatici dei videogiochi. Oltre alla passione per i giochi, gli
studenti del nostro corso per Sviluppatore di videogiochi dovranno avere l’impegno e la determinazione
per andare oltre il solo giocare: avranno bisogno di essere motivati a lavorare sodo e creare i propri titoli,
e dovranno mostrare il forte desiderio di diventare parte di un settore emozionante e dinamico.

DEV
Durante il corso, agli studenti viene insegnato passo dopo passo tutto ciò comportano che le fasi di
programmazione di un videogioco, esattamente come accade nel mondo reale. Le lezioni sono preparate
e insegnate da professionisti del settore e programmatori che sfi dano costantemente i limiti del settore
nel mercato di oggi. Il tutto è presentato in un formato unico, molto influenzato dalla tecnologia ludica,
per aiutare a imparare, ricordare e, soprattutto, a divertirsi mentre si acquisiscono nuove competenze.

In aula vengono insegnate le basi della programmazione in C++, i principi alla base dei giochi in 2D e
infine in 3D, dal concetto iniziale ai processi e alle metodologie dietro tutti i videogame.

Il corso è impartito attraverso una serie di lezioni ed esempi, coadiuvati e sostenuti da un ampio numero di
esercizi pratici. L’obiettivo del corso è aiutarti a imparare e crescere nella programmazione di videogiochi.

Speriamo che ti piacerà studiare questo corso quanto piace a noi insegnarlo.

Comincia la tua nuova carriera da sviluppatore di videogiochi.

Il settore dei videogiochi non è solo un lavoro, ma una vita piena di sfi de, divertimento e grandi gratifi cazioni.

Struttura del corso

Tutti i nostri corsi hanno una struttura a
moduli, ulteriormente divisi in lezioni e
singoli argomenti, con esempi pratici che
costituiscono la lezione stessa. Uno dei
nostri tutor esperti del settore impartirà la lezione e
avrai l’opportunità di imparare con molti altri studenti in
uno spazio di lavoro collaborativo.

Durante il corso, ci saranno delle valutazioni
periodiche, per permettere a te e al tuo tutor di calibrare
i progressi e sfi dare i tuoi limiti in ciò che hai imparato.
Valuteremo i tuoi progressi con: compiti pratici che riuniscono
vari argomenti, test di comprensione, il tuo portafoglio di
progetti e l’esame finale!

  2             Developer
Computer Game Developer Piano del corso - in collaborazione con
Modulo P1: Creare prototipi con un Game Creation System

Lezione 1 - Prima di iniziare

                   Preparazione

                                                                      DEV
                   Design

Lezione 2 – Uso di base di Game Creation System

                   Introduzione al software GCS

                   Esempio di gioco parziale semplice

Lezione 3 – Un esempio più avanzato

                   Un esempio avanzato

                   Pianificare l’idea di base, identificare e ottenere gli asset in rete

                   Implementare l’idea

Lezione 4 – Concetti avanzati

                   Un esempio complesso

                   Implementazioni su dispositivi mobili

                   Creare un’anteprima su Wi-Fi

                                                                www.dbgameacademy.it     3
Computer Game Developer Piano del corso - in collaborazione con
Modulo P2: Principi generali di programmazione

Lezione 1 – La logica

                   Struttura logica

DEV                Pseudocodice

Lezione 2 – Variabili

                   Quando usare le variabili

                   Numeri e stringhe

Lezione 3 – Il processo decisionale

                   Conditional logic

                   Repeating logic

Lezione 4 – Diagrammi di flusso

                   Struttura del diagramma di flusso

                   UML

4      Developer
Computer Game Developer Piano del corso - in collaborazione con
Modulo P3: Primi passi in C++

Lezione 1 – Perché C++?

                 Breve analisi di altri linguaggi (per es. C#, Java)

                                                                       DEV
                 Perché imparare C++ aiuta con gli altri linguaggi

                 Compilatore o interprete?

                 Codice o script?

Lezione 2 – Il compilatore

                 Impostare Visual C++

                 Il tuo primo programma

Lezione 3 – Le basi di C++

                 Sintassi

                 Tipi di variabili (ossia numeri, stringhe, ecc.)

                 Matrici

Lezione 4 – Funzioni

                 Parametri predefiniti

                 Regole di visibilità

                 Spazi dei nomi

Lezione 5 – Le tue tipologie

                 Strutture e unioni

                 Typedef ed enumerazione

                 Annotazioni e casting

                 Ciclo vitale e visibilità delle variabili

                                                                www.dbgameacademy.it   5
Computer Game Developer Piano del corso - in collaborazione con
Modulo P4: Principi di livello superiore in C++

Lezione 1 – Overloading

                    Overloading dell’operatore e della funzione

                    Funzioni ricorsive

Lezione 2 – Classi

                    Programmazione orientata agli oggetti

                    Spiegazioni sulle classi

                    Member functions e variabili

                    Friends

Lezione 3 – Elementi statici, costanti e template

                    Elementi statici e costanti

                    Static member functions, variabili statiche

                    Template e polimorfismo

Lezione 4 – Tutto ciò che devi sapere sui puntatori

                    Puntatori

                    Riferimenti

                    Allocazione di memoria: stack & heap

Lezione 5 – Liste, iteratori e altro

                    Liste semplicemente e doppiamente concatenate

                    Iterare attraverso oggetti

                    STL

                    Classificare gli algoritmi

Lezione 6 – Eseguire il debug

                    Spiegazione degli strumenti di base per il debug in Visual C++

                    Breakpoint e Watch window, breakpoint condizionali

                    Eccezioni

                    Migliorare la capacità di scovare i bug

                    Errori comuni

6       Developer
Computer Game Developer Piano del corso - in collaborazione con
Modulo P5: Programmazione migliore, programmare in gruppi

Lezione 1 – Convenzioni

                  Stile, notazione ungherese

                                                                   DEV
                  Commenti

                  Direttive

Lezione 2 – Oggetti e programmazione orientata agli oggetti (OOP)

                  Spiegazione degli oggetti

                  Orientamento agli oggetti

                  Scambio messaggi tra gli oggetti

Lezione 3 – Design pattern

                  Factories

                  Singleton

                  Manager

                  State machine

Lezione 4 – Controllo versione

                  Vari tipi di controllo versione

                  Branching, trunks

                  Unificare i cambiamenti

Lezione 5 – Gestione dei progetti

                  Waterfall, Agile, ecc.

                  Strumenti di gestione, Project, JIRA, ecc.

                                                               www.dbgameacademy.it   7
Computer Game Developer Piano del corso - in collaborazione con
Modulo P6: Teoria di programmazione grafica

Lezione 1 – Tutto ciò che devi sapere su 2D e 3D

                   Spiegazioni e paragoni tra 2D e 3D

                   Concetti e termini fondamentali del 2D

                   Concetti e termini fondamentali del 3D

Lezione 2 – Spazi del progetto

                   Local space, global space

                   Funzioni trigonometriche

                   Proiezioni

Lezione 3 – Vettori e matrici

                   Trasformazioni e combinazioni

                   Prodotti scalari, prodotti vettoriali

                   Normali, ordine di avvolgimento

Lezione 4 – Modelli 3D

                   Rappresentazioni poligonali

                   Applicare texture

                   Coordinate UVW e mappatura

Lezione 5 – Telecamere e luci

                   Campo visuale (FOV), frustums

                   Eliminazione selettiva

                   Come calcolare la luce

                   Tipi di illuminazione

Lezione 6 – La pipeline grafica

                   Spiegazioni sulla pipeline grafica

                   Fissa o programmabile?

                   Breve spiegazione sugli shader

8      Developer
Modulo P7: Primi passi nella programmazione di giochi

Lezione 1 – Considerazioni

                    Programmazione di giochi

                    Orientamento agli oggetti o agli eventi?, loop principale

                    Delta time

                    Indipendenza della piattaforma

Lezione 2 – SDK, motori e altro

                    DirectX e OpenGL (in breve)

                    Motori grafici e sviluppatori

                    Unity, UDK (in breve)

Lezione 3 – Tipi più semplici di intelligenza artificiale

                    Soluzioni semplici di intelligenza artificiale

                    Patrolling e route-finding

                    Aggiungere nemici ad un progetto reale

Lezione 4 – Aggiungere il suono

                    Campionatura, forme d'onda

                    Buffer

                    Audio posizionale

                    Aggiungere effetti sonori e musica a un progetto reale

Lezione 5 – Generazione procedurale

                    Usare il programma per generare risorse

                    Frattali, rumori, ecc.

                    Tavole, dati, ecc.

Lezione 6 – Salvataggio e caricamento

                    Salvataggio e caricamento

                    Serializzazione

                    Considerazioni sulla struttura dati

                                                                    www.dbgameacademy.it   9
Modulo P8: Programmazione Windows e DirectX

Lezione 1 – Programmazione Windows

                   Windows, messaggi

DEV                Integrare con DirectX

                   Superfici, chiusure, buffer doppio

                   Immagini sprite, trasparenza

Lezione 2 – Direct 3D

                   Qual è la relazione tra le varie tecnologie DirectX

                   Come ti può aiutare Direct3D

                   Impostare una scena in D3D, buffer di vertice

Modulo P9: Programmazione Windows e OpenGL

Lezione 1 – Programmazione Windows

                   Windows, messaggi

                   Integrare con OpenGL

                   Superfici, chiusure, buffer doppio

                   Un progetto semplice a schermo fisso

Lezione 2 – OpenGL

                   Come ti può aiutare OpenGL

                   Impostare una scena su OpenGL

10     Developer
Modulo P10: Utilizzare Unity

Lezione 1 – Introduzione a Unity

                  Funzionalità e potenzialità

                                                               DEV
                  UI

                  Scripting

Lezione 2 – Creare una scena/app semplice in 3D

                  Creare mondo, telecamera, luci

                  Aggiungere il movimento

                  Aggiungere collisioni e altri dettagli

Lezione 3 – Usare il 3D per creare una scena/app in 2D

                  Strategia in 2D

                  Oggetti planari, billboarding

                                                           www.dbgameacademy.it   11
Modulo P11: Animazione avanzata e visualizzazioni

Lezione 1 – Scheletri e animazioni

                    Perché usiamo gli scheletri

                    Skinning

                    Animazione

                    Importare un’animazione 3D

Lezione 2 – Stencil Buffer, ombreggiature

                    Stencil buffer

                    Varie tecniche di ombreggiatura

Lezione 3 – GPU e l’uso degli shader

                    HLSL, ecc.

                    Pix-> Debugger per Visual Studio Graphics

                    Mappatura normale e altri effetti visivi

Lezione 4 – Raccolta in 3D, collisioni

                    La tecnica di raycasting

                    Come agire con altri tipi di collisioni

                    Collisioni 3D in pratica

Lezione 5 – Gestione della scena

                    Rendering a istanze

                    Alberi BSP, grafico di scena

                    Algoritmi sweep and prune, strutture di dati

Lezione 6 – Particelle e shader avanzati

                    Sistemi particellari

                    Rendering della texture

                    Multi-texturing su terreni (splatting)

12      Developer
Modulo P12: Considerazioni sulla tecnologia mobile

Lezione 1 – Sviluppare per i dispositivi mobili

                    Android, iOS, ecc.

                                                                            DEV
                    Telefoni, tablet, gestire risoluzioni diverse, retina

                    Ottimizzazioni specifiche per i dispositivi mobili (draw call)

                    Input aggiuntivi: tocco, inclinazione, GPS, telecamere, ecc.

Lezione 2 – Gli App Store

                    Apple, Google, Amazon

                    Analytics

Modulo P13: INTELLIGENZA ARTIFICIALE

Lezione 1 – Strategie di intelligenza artificiale

                    Tipi di intelligenza artificiale

                    Intelligenza artificiale più semplice, guida, pattugliamento, ecc.

                    Trovare le strade con A*

Lezione 2 – Intelligenza artificiale più complessa

                    Alberi decisionali

                    Algoritmi genetici

                    Intelligenza artificiale a turni

Lezione 3 - Apprendimento della macchina

                    Reti neurali

                    Percettroni

                    Scacchi con intelligenza artificiale, alberi minimax

                                                                   www.dbgameacademy.it   13
Modulo P14: Gestire più giocatori

Lezione 1 – Considerazioni sul multiplayer

                    Approccio autoritario o non autoritario?

DEV                 Sincronizzazione, latenza

                    Far fronte a disconnessione e migrazione del server

                    Previsione del cliente, interpolazione

Modulo P15: Quando c’è più di un core

Lezione 1 – Programmazione in multi-threading

                    Usare più nuclei

                    Sicurezza dei thread

                    Comunicazione tra processi

14      Developer
Note

           DEV

       www.dbgameacademy.it   15
Scopri di più su:
www.dbgameacademy.it

DIGITAL BROS GAME ACADEMY S.r.l.
    via Labus 15/3 - 20147 Milano
        Tel.: (+39) 02 41.30.31
   E-mail: info@dbgameacademy.it

      © Copyright Train2Game Sro
Puoi anche leggere