DXVK è un layer di traduzione che utilizza Vulkan, una potente API (Application Programming Interface) per la grafica, per convertire le librerie Direct3D 9, 10 e 11. Le librerie Direct3D sono standard di programmazione grafica sviluppati da Microsoft, utilizzati per il rendering di grafica 3D nei giochi su piattaforme Windows. Questo strumento è particolarmente utile per gli utenti di GNU/Linux, poiché consente di eseguire giochi progettati per Windows, migliorando sia le prestazioni che la compatibilità.
La principale funzione di DXVK è quella di fungere da intermediario tra i giochi Windows e il sistema operativo GNU/Linux, utilizzando Wine o Proton. Wine è un software che permette di eseguire applicazioni Windows su sistemi operativi Unix-like, mentre Proton è una versione di Wine ottimizzata per i giochi su Steam. Grazie a DXVK, i giocatori possono godere di un’esperienza di gioco migliore e più performante, anche quando utilizzano titoli che non sono nativamente supportati su GNU/Linux.
La recente versione DXVK 2.5.2 introduce diverse innovazioni significative che meritano attenzione. Questi aggiornamenti non solo migliorano la stabilità e le prestazioni generali dei giochi, ma affrontano anche problemi specifici legati all’interazione tra le applicazioni D3D9 e le interfacce grafiche del sistema operativo.
Modifiche per i Sistemi Windows
DXVK 2.5.2 introduce una modifica significativa per gli utenti Windows, in particolare per quanto riguarda la gestione della modalità schermo intero. DXVK è principalmente sviluppato per aiutare a eseguire giochi Windows su GNU/Linux traducendo le chiamate Direct3D in chiamate Vulkan. Tuttavia, su Windows, questa traduzione può essere utile per sviluppatori che desiderano testare le prestazioni o la compatibilità dei loro giochi con l’API Vulkan. Ora, se il driver grafico installato su Windows supporta l’estensione chiamata VK_EXT_fullscreen_exclusive, DXVK tenterà di disabilitare questa modalità in modo coerente. La modalità schermo intero esclusivo è una configurazione che consente a un’applicazione di occupare completamente lo schermo, escludendo altre finestre o applicazioni. Sebbene questa modalità possa offrire prestazioni migliori in alcuni casi, ha anche dimostrato di causare problemi, specialmente durante l’uso della combinazione da tastiera di ALT + TAB, che permette agli utenti di passare rapidamente da un’applicazione all’altra.
Questa modifica è stata introdotta per affrontare le difficoltà comuni che molti utenti Windows hanno riscontrato, come il malfunzionamento di ALT + TAB e vari problemi visivi quando le applicazioni basate su Direct3D 9 (D3D9) interagiscono con interfacce grafiche gestite tramite GDI (Graphics Device Interface). GDI è un componente fondamentale di Windows che gestisce la rappresentazione grafica e l’interazione con la superficie dello schermo.
È importante sottolineare che, sebbene DXVK tenti di disabilitare la modalità schermo intero esclusivo, la decisione finale spetta al driver grafico utilizzato. Questo significa che non tutti i driver potrebbero rispettare questa nuova impostazione, ma l’obiettivo è comunque quello di ridurre le interruzioni indesiderate per i giocatori.
In precedenza, queste ottimizzazioni per la modalità schermo intero erano disponibili solo per le applicazioni che avevano esplicitamente abilitato il supporto per le finestre di dialogo GDI in modalità schermo intero. Di conseguenza, l’opzione di configurazione “d3d9.enableDialogMode” è stata rimossa dalla nuova versione DXVK 2.5.2.
Infine, è fondamentale notare che queste modifiche non hanno alcun impatto sugli utenti GNU/Linux. Nel sistema operativo GNU/Linux, il concetto di schermo intero esclusivo e i relativi problemi non esistono, il che significa che gli utenti di questo ambiente possono continuare a utilizzare DXVK senza doversi preoccupare delle complicazioni legate a questa modalità.
Miglioramenti Generali e Risoluzione di Bug
Oltre alle modifiche nella gestione dello schermo intero, DXVK 2.5.2 include un ampio insieme di correzioni e miglioramenti progettati per ottimizzare le prestazioni e ridurre i problemi di compatibilità. Ad esempio, sono state implementate interfacce di validazione per gli shader D3D9, che sono programmi utilizzati per gestire il rendering grafico nei giochi, soddisfacendo così i requisiti di titoli come The Void e migliorando la stabilità in altri giochi basati su D3D9.
Un’altra correzione assicura che le applicazioni D3D9 non presentino comportamenti imprevedibili quando utilizzano tipi di texture errati, un problema precedentemente riscontrato in Alpha Protocol. Inoltre, quando l’estensione VK_KHR_maintenance5 è supportata, DXVK utilizza ora il formato VK_FORMAT_A8_UNORM per riflettere il corrispondente formato D3D11. Questo passaggio elimina avvisi in vari giochi e risolve bug di rendering in titoli come TopSpin 2K25.
L’aggiornamento porta anche miglioramenti all’efficienza, inclusa una gestione ottimizzata dei piani di ritaglio disabilitati negli scenari D3D9, e corregge un problema sottile in cui la variabile d’ambiente DXVK_CONFIG non veniva sempre applicata come previsto.
Correzioni Specifiche per Giochi Popolari
Diversi fix mirano a risolvere problemi noti in giochi popolari. Ad esempio, i giocatori di Borderlands 2 dovrebbero vedere ripristinati elementi di lava precedentemente mancanti, mentre i fan di Codename Panzers: Phase I e Codename Panzers: Phase II saranno sollevati nel vedere il menu principale visualizzato correttamente nelle versioni standard di Wine. Inoltre, The Sims 2 riceve un’estensione ai profili delle applicazioni esistenti, garantendo che vari strumenti di modding (pratica di modificare o creare contenuti personalizzati per il gioco) funzionino come previsto.
Ecco un riepilogo dei giochi menzionati nell’articolo riguardante la versione DXVK 2.5.2 che hanno avuto risoluzione di problemi noti:
- Alpha Protocol
- Borderlands 2
- Codename Panzers: Phase I
- Codename Panzers: Phase II
- The Sims 2
- The Void
- TopSpin 2K25
Per ulteriori dettagli su tutte le modifiche apportate nella versione DXVK 2.5.2, è possibile consultare il changelog (registro delle modifiche) disponibile sul sito ufficiale del progetto.
Fonte: https://github.com/doitsujin/dxvk/releases/tag/v2.5.2
Fonte: https://www.phoronix.com/news/DXVK-2.5.2-Released
Fonte: https://9to5linux.com/dxvk-2-5-2-improves-support-for-alpha-protocol-borderlands-2-and-other-games
Fonte: https://linuxiac.com/dxvk-2-5-2-improves-windows-gaming-experience/
Source: Read More