Sei sulla pagina 1di 4

VIDEO GAME

PROGRAMMING
GAME ENGINE E LINGUAGGI PER LA
PROGRAMMAZIONE DI VIDEOGIOCHI

CORSO TRIENNALE

aiv01.it
VIDEO GAME PROGRAMMING | corso triennale accademia italiana videogiochi |

PROGRAMMA DIDATTICO
ANNO 1

Il primo anno ha l’obiettivo di introdurre gli studenti al mondo della programmazione, con enfasi particolare
alle tecniche specifiche del game development.
Gli studenti si impegnano nella realizzazione di demo tecniche di videogiochi in 2D, sia per tenere alto il
livello di interesse e di sfida, sia per dotarli il prima possibile di un portfolio tecnico di rilievo.
La scelta del linguaggio C# è esclusivamente propedeutica ad affrontare il percorso del secondo anno,
incentrato per larga parte sul game engine Unity.

PROGRAMMAZIONE DI BASE FONDAMENTI DI MATEMATICA


Basi numeriche PER VIDEOGIOCHI
Introduzione ai linguaggi di programmazione Aritmetica vettoriale 2D e trigonometria
Linguaggio C#: strutture di controllo Algoritmi di collisione: AABB, SAT
Linguaggio C#: OOP Fondamenti di fisica newtoniana
Utilizzo del Debugger Algoritmi di collisione avanzati: raycasting
Linguaggio C#: collections
Linguaggio C#: Eccezioni BASI DI INTELLIGENZA ARTIFICIALE
Logica Fuzzy
PROGRAMMAZIONE PER VIDEOGIOCHI Algoritmi di pathfinding
Introduzione al game development e le Finite State Machine
relative figure professionali
Il Game Loop e la temporizzazione GESTIONE DATI
Gestione dei dispositivi di input Gestione del filesystem
Sprite e animazioni 2D Lettura e scrittura su file
Tilemaps Serializzazione (XML, JSON)
Split Screen
Introduzione al sistema audio INTRODUZIONE ALLA
Pattern di programmazione di videogiochi PROGRAMMAZIONE 3D
Aritmetica Vettoriale 3D
COMPUTER GRAPHICS La proiezione prospettica
Introduzione alla Computer Graphics Tecniche di rasterizzazione nello spazio 3D
Accelerazione hardware fornita dalla GPU Il formato obj
GPU instancing
Introduzione agli shader: GLSL per
post-processing
Curve di Bezier
Render to Texture

Il programma didattico potrà subire variazioni anche durante il corso dell’anno accademico aiv01.it
VIDEO GAME PROGRAMMING | corso triennale accademia italiana videogiochi |

PROGRAMMA DIDATTICO
ANNO 2

Il secondo anno è focalizzato sullo studio del game engine Unity, che verrà usato anche per sviluppare
il primo progetto lavorando in team con la collaborazione della classe di Game Design.
Verrà affrontato lo scripting con Python per tooling e altre finalità.
Si inizierà anche a studiare i fondamenti di Unreal Engine per sviluppare un gioco per mezzo di
Blueprints Visual Scripting.

PYTHON SCRIPTING UNITY


introduzione Python, si stassi base, variabili, Fondamenti dell’Editor
data types, operatori C#
loops, funzioni, classi, ereditarietà, duck typing, Quaternioni
pip virtual environment e moduli
Fisica
manipolazione stringhe, numpy, pyxel ed
esercizi con pyxel Animazioni
matplotlib e pyxel draw api Cinematica Inversa
matplotlib avanzato, file management UI
pillow, lambdas Ottimizzazione
pillow pt.2 python3.8 advanced, pycharm, Materiali
Jupyter Lighting
pandas, regex Particles
open3d basic NavMesh
open3d advanced Intro agli Shader
unit tests e cone buildare una libreria Intro VR e AR
pyside2, QT
opencv UNREAL ENGINE
Engine Basics
Blueprint Basics
Blueprint Communication
Gameplay Framework
Navigation System
Character Animation Basics
Artificial Intelligence

Il programma didattico potrà subire variazioni anche durante il corso dell’anno accademico aiv01.it
VIDEO GAME PROGRAMMING | corso triennale accademia italiana videogiochi |

PROGRAMMA DIDATTICO
ANNO 3

Il terzo anno inizierà con lo studio delle architetture hardware e dei sistemi operativi per poi passare ai
linguaggi C e C++ che verranno utilizzati per tutta la durata del corso. Verrà ripreso lo studio di Unreal Engine,
questa volta per studiarne la API C++ e il suo sistema di moduli ed estensioni.
Parte molto importante del corso è quella di GPU programming dove si studieranno OpenGL, DirectX e
Vulkan e la relativa programmazione di shader col GLSL e HLSL.

LINGUAGGI C/C++
Kernel e syscall (sistemi operativi)
Il linguaggio C
Librerie SDL, libui, stb
C++ 11/14
Librerie PhysX, FMod, Box2D, Cuda, FbxSDK
Le librerie QT
Entity Component System

GPU PROGRAMMING
OpenGL4 e GLSL
Fondamenti di Vulkan
Fondamenti di DirectX11, DirectX12 e HLSL

COMPUTER GRAPHICS
Raytracing
Software Rasterizer
Shader PBR

UNREAL ENGINE
Reflection System (UObject)
GameFramework
Slate
Moduli e Plugin
Realizzazione di un progetto con C++

PROGRAMMAZIONE CONCORRENTE E PARALLELISMO


Threads (Posix, Win32, C++11) e Processi
Coroutines

Il programma didattico potrà subire variazioni anche durante il corso dell’anno accademico aiv01.it

Potrebbero piacerti anche