Version 3.1
- 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
- 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
- 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.enableNvCudaInteropconfiguration option so users can explicitly disableVK_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.