Rilascio di DXVK 1.10 e VKD3D-Proton 2.6, implementazioni Direct3D per Linux

È disponibile il rilascio del livello DXVK 1.10, che fornisce un'implementazione di DXGI (DirectX Graphics Infrastructure), Direct3D 9, 10 e 11, lavorando attraverso la traduzione delle chiamate all'API Vulkan. DXVK richiede driver che supportano l'API Vulkan 1.1, come Mesa RADV 20.2, NVIDIA 415.22, Intel ANV 19.0 e AMDVLK. DXVK può essere utilizzato per eseguire applicazioni e giochi 3D su Linux utilizzando Wine, fungendo da alternativa a prestazioni più elevate alle implementazioni integrate di Direct3D 9/10/11 di Wine in esecuzione su OpenGL.

Principali modifiche:

  • Rimossi i gestori di sincronizzazione dei thread non necessari utilizzati durante il caricamento delle risorse nelle implementazioni D3D11 e D3D9. La modifica ha migliorato significativamente le prestazioni di Assassin's Creed: Origins e altri giochi basati sul motore AnvilNext e ha avuto un effetto positivo anche sulle prestazioni di Elex II, God of War e GTA IV.
  • Ottimizzato l'uso di D3D11_MAP_WRITE per le risorse caricate nella GPU, che ha migliorato le prestazioni del gioco Quantum e potenzialmente di altre applicazioni.
  • Ottimizzata l'operazione UpdateSubresource per l'aggiornamento di piccoli buffer fissi. Il cambiamento ha avuto un impatto positivo sulle prestazioni di God of War e forse di altri giochi.
  • L'elaborazione delle risorse di caricamento e dei buffer intermedi in D3D11 è stata accelerata. La modifica ha ridotto il carico della CPU in alcuni giochi.
  • Aggiunte informazioni all'HUD di debug utili per diagnosticare problemi di prestazioni, come le informazioni sui tempi.
  • Il codice di sincronizzazione della GPU è stato eliminato dall'utilizzo dei cicli di attesa, il che ha ridotto il consumo energetico sui dispositivi mobili in alcuni giochi.
  • Aggiunto uno stub per chiamare 3D11On12CreateDevice, che in precedenza causava l'arresto anomalo delle applicazioni.
  • Le prestazioni dei giochi Total War: Warhammer III, Resident Evil 0/5/6, Resident Evil: Revelations 2 sono state migliorate.
  • Sono stati risolti i problemi nei giochi ArmA 2, Black Mesa, Age of Empires 2: Definitive Edition, Anno 1800, Final Fantasy XIV, Nier Replicant, The Evil Within.

Inoltre, Valve ha pubblicato il rilascio di VKD3D-Proton 2.6, un fork del codice base vkd3d progettato per migliorare il supporto Direct3D 12 nel launcher del gioco Proton. VKD3D-Proton supporta modifiche, ottimizzazioni e miglioramenti specifici di Proton per migliorare le prestazioni dei giochi Windows basati su Direct3D 12, che non sono ancora stati adottati nella parte principale di vkd3d. Tra le differenze c'è anche un focus sull'uso delle moderne estensioni Vulkan e sulle capacità delle ultime versioni dei driver grafici di raggiungere la piena compatibilità con Direct3D 12.

Nella nuova versione:

  • I problemi relativi a Horizon Zero Dawn, Final Fantasy VII: Remake e Warframe, Guardiani della Galassia, Elden Ring e Age of Empires: IV sono stati risolti.
  • DXIL ha migliorato il codice shader generato per le operazioni di caricamento e archiviazione vettorizzate.
  • Carico della CPU ridotto durante la copia dei descrittori.
  • La libreria della pipeline D3D12 è stata riscritta per fornire la memorizzazione nella cache della vista SPIR-V generata da DXBC/DXIL. La modifica ha consentito tempi di caricamento più rapidi per giochi come Monster Hunter: Rise, Guardian of the Galaxy ed Elden Ring.
  • Il modello shader 6.6 è completamente implementato, incluso il supporto per l'accesso diretto a ResourceDescriptorHeap[], operazioni atomiche a 64 bit, il metodo IsHelperLane(), shader di calcolo derivati, l'attributo WaveSize e intrinseci matematici pacchettizzati (Intrinsics).

Inoltre, segnaliamo la pubblicazione da parte di Valve del codice SteamOS Devkit Service e SteamOS Devkit Client con l'implementazione di un server e client che permette di scaricare assembly dei propri giochi direttamente dal computer sullo Steam Deck, nonché di eseguire debug e altre attività correlate che emergono durante il processo di sviluppo.

Fonte: opennet.ru

Aggiungi un commento