DXVK v3.1

v3.1WindowsLinux

Version 3.1

Added 4
  • Implement basic support for DXGI present parameters with VK_KHR_incremental_present extension to forward dirty rectangles to Vulkan
  • Implement support for creating render target views on buffers directly for D3D11
  • Load Intel-specific extension libraries when using an Intel GPU
  • Add dxvk.enableNvCudaInterop configuration option to allow users to disable VK_NVX_* extensions
Changed 2
  • Improve compatibility with external overlays that hook specific DXGI entry points
  • More aggressively optimize render areas in render passes to the actual rendered image region on tiling GPUs
Fixed 7
  • Fix D3D9 fog regression that broke rendering in Mabinogi, The Witcher 1 and other games
  • Fix crash when applications try to compile shaders that can only work with D3D12
  • Work around out-of-memory crash on Nvidia GPUs with descriptor heaps enabled
  • Fix Ghost Recon Breakpoint issue where pipeline state would not be set up properly for a specific shader
  • Fix Ghost Recon Breakpoint water misrendering on Nvidia GPUs
  • Fix Mirrors Edge Vulkan validation errors
  • Fix RaceRoom Racing Experience web-based UI rendering issue on Proton 11

From DXVK

Feature support
DXGI incremental presentation

Added basic support for DXGI present parameters. This fixes UI rendering issues in VirtualDJ (#5853), and is also used by various game launchers, such as Ubisoft Connect.

If supported by the driver, VK_KHR_incremental_present is leveraged to forward dirty rectangles to Vulkan, which may reduce the amount of work the compositor has to do, but is not guaranteed to do so.

D3D11 buffer render targets

Implemented support for creating render target views on buffers directly. This is primarily used by various older Frostbite engine titles, including Battlefield 3 where it fixes a long-standing issue with clouds misrendering in some situations (#5857).

Note: This feature is emulated by creating a 1D texture internally. It is not meant to be performant.

Intel vendor extensions

Intel-specific extension libraries are now loaded when using an Intel GPU, which is a requirement for Proton to support Intel vendor extensions for D3D11 in the future. This will work similarly to AMDAGS and NVAPI extensions that are already supported.

Bug fixes and Improvements
  • Improved compatibility with some external overlays that hook specific DXGI entry points (PR #5846, PR #5851).
  • Render areas in render passes are more aggressively optimized to the actual rendered image region on tiling GPUs.
  • Fixed a D3D9 fog regression that broke rendering in Mabinogi, The Witcher 1 and potentially other games. (#5804, #5808)
  • Fixed a crash when applications try to compile shaders that can only work with D3D12.
  • Worked around a specific type of out-of-memory crash on Nvidia GPUs with descriptor heaps enabled. (#5855) Additionally, added dxvk.enableNvCudaInterop configuration option so users can explicitly disable VK_NVX_* extensions. This may be helpful for troubleshooting similar out-of-memory errors, but disables DLSS support.
  • Ghost Recon Breakpoint: Fixed an issue where pipeline state would not be set up properly for a specific shader. Also fixed an issue with water misrendering on Nvidia GPUs. (#5849, https://github.com/doitsujin/dxbc-spirv/pull/92)
  • Mirrors Edge: Fixed some Vulkan validation errors. (#5826)
  • RaceRoom Racing Experience: Fixed an issue where the web-based UI wouldn't render properly on Proton 11.
View original

Upgraded? How did it go?

Discussion