Portfolio: Robomatch
Questo progetto nasce dalla mia passione per i videogiochi visti non solo come un
passatempo, ma anche come una misura dell'avanzamento tecnologico e dell'abilità
dei programmatori di spremere al massimo le prestazioni della risorse
hardware per produrre giochi sempre più realistici e coninvolgenti.
In quest'ottica, a differenza di quello che si potrebbe pensare, il videogioco 3D è forse
l'applicazione più complessa che si possa sviluppare: esso deve essere estremamente
performante per consentire un'interazione con l'utente in realtime e allo stesso
tempo deve tentare di simulare la realtà nella maniera più fedele possibile.
Per questo motivo la 'black
art' del game programmer si avvale di algoritmi provenienti dai più svariati campi:
- algoritmi per la simulazione dell'A.I. degli avversari (bot) controllati dalla CPU (pathfinding, FSM);
- algoritmi per la simulazione della fisica (collision detection, rigid body dynamics);
- algoritmi per la gestione efficiente dello spazio (BSP, octree, quadtree);
- algoritmi per la rimozione delle superfici non visibili (frustum culling);
- algoritmi per l'animazione dei personaggi (keyframing);
- ecc...