Necessarie per sfruttare a pieno la potenza di calcolo di scheda grafica e delle altre componenti hardware, sono state introdotte con Windows 95.

La Microsoft DirectX è una collezione di API (Application programming interface) necessarie per gestire operazioni e istruzioni di carattere multimediale – in particolare programmazione di videogames ed editing video – su piattaforme Microsoft. Originariamente, i nomi delle API iniziavano con Direct: Direct3D, DirectDraw, DirectMusic, DirectPlay, DirectSound e così via. Il nome DirectX è stato introdotto nel momento in cui le API sono state inserite in una raccolta e distribuite come unico pacchetto. Nel momento in cui Microsoft ha deciso di sviluppare una propria console di videogame, la casa di Redmond ha deciso di utilizzare la X come fulcro del nome: Xbox, dunque, indica che la GPU della console ricorre alle API grafiche della DirectX per il rendering delle immagini da visualizzare.

Tra le varie API incluse nella suite, quelle legate al comparto grafico sono le più conosciute e utilizzate. Necessarie per sfruttare a pieno la potenza di calcolo della scheda grafica, sono sfruttate per lo sviluppo di videogames per Windows, Sega Dreamcast, Microsoft Xbox, Xbox 360 e Xbox One. Dal momento che la Direct3D è la più utilizzata, è piuttosto comune vedere i nomi Direct3D e DirectX usati in maniera intercambiabile.

 

DirectX 12

 

Dalla DirectX 9Ex in poi, gli aggiornamenti delle API sono rilasciati solamente per sistemi Windows Vista o superiori: alla base di tutto, infatti, ci sono i driver Windows display driver model, introdotti proprio con Windows Vista.

Lo sviluppo della DirectX

Introdotta con Windows 95 OEM Service release 2, la DirectX è stata oggetto di uno sviluppo continuo e duraturo. Nelle ultime versioni, Microsoft si è impegnata a realizzare API e driver che sfruttassero in maniera efficiente la sempre maggiore potenza di calcolo delle GPU e dei processori. La DirectX 11, introdotta con Windows 7, offre il supporto al GPGPU (General-purpose computing on graphics processing units, ovvero sfruttare le GPU per eseguire anche istruzioni non grafiche) e migliora la gestione della tessellation e del multi-threading. In questo ultimo caso, il lavoro degli sviluppatori della casa di Redmond è stato necessario per dare la possibilità ai programmatori terzi di utilizzare in maniera più efficiente i processori multicore in rapida diffusione.

 

 

Il 29 luglio 2015, in concomitanza con il lancio di Windows 10, ha fatto il suo esordio la DirectX 12. Anche in questo caso, Microsoft ha introdotto novità che puntano a efficentare la gestione delle risorse da parte dei driver grafici: con la Direct3D 12, ad esempio, le GPU dovrebbero essere in grado di effettuare il rendering di immagini con una velocità tra il 50% e il 70% superiore rispetto al passato.

Le novità della DirectX 12

Una tale efficienza è resa possibile da una gestione del carico del lavoro completamente differente rispetto al passato. Le DirectX 12 permette di parallelizzare il rendering delle immagini e di distribuire con maggior razionalità le operazioni da eseguire: in questo modo si ottimizzano i tempi di esecuzione da parte di CPU e GPU, ottenendo migliori performance e consumi inferiori rispetto al passato.

 

Migliori prestazioni con DirectX 12 Multiadapter

 

La nuova DirectX, inoltre, permette agli sviluppatori di portare la parallelizzazione delle operazioni grafiche ad un livello superiore. Nel rendering delle immagini dei videogame, ad esempio, i frame che compongono una scena possono essere trattati da due diverse GPU in parallelo: in questo modo il rendering è più veloce si possono ottenere prestazioni di gran lunga migliori rispetto al passato. Una tale funzionalità può trovare ampia applicazione nei portatili, solitamente dotati di due schede grafiche (una GPU integrata nella scheda madre e una GPU specializzata nel calcolo grafico per compiti più esigenti). Grazie al DirectX 12 Multiadapter, il computer portatile sarà in grado di sfruttare le capacità di calcolo della GPU dedicata per il rendering e l’elaborazione dei frame, mentre la GPU integrata potrà essere sfruttata per la post produzione. Sarà così possibile ottenere un framerate maggiore e immagini più scorrevoli e fluide.

Adozione della DirectX 12

 

 

Rispetto al passato, l’introduzione della DirectX 12 dovrebbe essere meno traumatica per gli utenti. Secondo Microsoft, al lancio di Windows 10 il 50% degli utenti dovrebbe poter sfruttare le nuove API grafiche, mentre Nvidia e AMD promettono ampio supporto. La casa statunitense ha dichiarato che tutte le GPU basate su architettura Fermi, Kepler e Maxwell che supportano la DirectX 11 supporteranno anche la versione rinnovata della suite Microsoft. I canadesi, invece, offriranno driver DX 12 per tutte le schede basate su architettura GCN 1.0, 1.1 e 1.2 attualmente in commercio. Anche le APU A10 e A8 più recenti saranno compatibili con la DirectX 12.