DirectX fastidiose su Steam? La colpa è di Microsoft

Valve ha spiegato il perchè delle continue installazioni delle librerie DirectX con i giochi scaricati da Steam. Il problema è da cercare nel modo in cui Microsoft realizza i pacchetti e nella libreria D3DX helpers, necessarie per controllare che le versioni dei file installati coincidano con quelli richiesti dal gioco.

Valve ha spiegato il motivo per cui gli utenti di Steam sono obbligati a installare le librerie DirectX dopo aver scaricato un gioco, vecchio o nuovo. Secondo John McCaskey, un ingegnere del software dell'azienda, il problema è da cercare nel modo in cui Microsoft "impacchetta" il software, che in alcuni casi contiene più istanze D3DX all'interno dei file di configurazione .NET.

"Non si parla di far sì che le vostre DirectX siano aggiornate. Microsoft usa una libreria helper con D3D (Direct3D), chiamata D3DX (Wikipedia). Potete trovare file adibiti a questo scopo come d3dx9_43.dll nella cartella Windows\system32", dichiara McCaskey.

"Ci sono più di 40 versioni diverse di librerie D3DX per D3D9, e molte di più per D3D10 e 11. Ogni gioco che usa le librerie D3DX è collegato a una versione specifica", continua McCaskey, spiegando che ogni titolo deve far partire l'installer D3D corretto per assicurarsi che le librerie DirectX siano aggiornate.

L'ingegnere aggiunge che anche una versione installata per x86 non garantisce che possa andare bene anche per x64, quindi i giochi a 64 e a 32 bit potrebbero usare lo stesso installer ma indirizzandosi a piattaforme diverse.

I giochi basati sul Source Engine non hanno bisogno del fastidioso installer - Clicca per ingrandire

"I giochi che non usano gli helper D3DX (come quelli basati sul motore Source di Valve) non hanno bisogno di far partire il fastidioso installer al primo avvio, perché dipendono dalle librerie principali D3D9/10/11 installate. Tuttavia, i giochi che usano D3DX devono far partire l'installazione, visto che è l'unico modo permesso da Microsoft per distribuire e controllare le informazioni sulle versioni dei file", spiega McCaskey.

Purtroppo a questo problema non sembrano esserci soluzioni, a causa di decisioni infelici riguardanti gli schemi dei pacchetti, delle versioni e di fastidiose licenze di ridistribuzione delle librerie D3DX.

"L'unica cosa che Steam potrebbe fare è da rendere la piattaforma abbastanza intelligente da sapere se una versione che coincide esattamente con l'installer DX è già stata scaricata, per poi condividere quel contenuto in modo da non dover effettuare il download con ogni gioco", ha dichiarato McCaskey.

Tuttavia, questa soluzione risolverebbe solo parte del problema e richiederebbe diversi sforzi ai produttori di videogiochi a causa della maggiore complessità nel creare i pacchetti del software e nella gestione delle dipendenze d'installazione. Per ulteriori approfondimenti potete leggere il thread sul forum ufficiale di Steam (in lingua inglese), cliccando su questo indirizzo.