XNA (che per quel che ne so non ha un significato, è solo un nome di fantasia inventato dai commerciali Microsoft in cui la X gioca lo stesso ruolo identivficativo giocato in DirectX e Xbox) è un’infrastruttura .NET che (di fattto) interfaccia il mondo del codice gestito (tipico di .NET) con quello più di basso livello (C++) proprio di DirectX. Potremmo dire senza tema d’essere smentiti che XNA è un modo gestito per incapsulare DirectX. Questo (secondo me) non segna ancora la fine di DirectX come piattaforma di sviluppo per giochi poiché XNA, per quanto molto completo, manca ancora di alcune parti per cui a volte diviene necessario accedere al sottostante strato DirectX attraverso la sua libreria di interoperabilità. Non metto però in dubbio che non ci vorrà molto perché XNA diventi un’infrastruttura sufficientemente completa da soppiantare il DirectX SDK, tutto dipende da quanto Microsoft espanderà la piattaforma di sviluppo (XNA Game Studio).
In questo lavoro faccio riferimento sempre e comunque ad XNA 3.1, quindi per seguire la trattazione e gli esempi è necessario dotarsi di tutto ciò che trovate scaricabile sul sito ufficiale (
http://creators.xna.com/it-IT/downloads) e cioè (in ordine di installazione sul tuo PC):
· Visual C# 2008
· DirectX SDK (facoltativo)
· XNA Game Studio 3.1
Perché anche DirectX SDK? Semplicemente perché ne avremo bisogno per implementare nel corso di questo studio alcune funzionalità che non fanno parte di XNA ma che sono molto utili nei giochi (in Windows).