D3D11 runtime interface
D3D11 interfaces were updated to D3D11.4, which is the latest version available in Windows 10 (1903). This introduces a number of new API features, some which are supported by DXVK if the underlying Vulkan driver supports the corresponding features.
The following features are optional and are currently not supported:
- D3D11.2: Tiled Resources
- D3D11.3: Conservative Rasterization
- D3D11.3: Rasterizer Ordered Views
These features may be implemented in the future in case any games make use of them.
This change fixes a crash in Plants vs Zombies - Battle for Neighborville, which requires at least a D3D11.3 runtime.
DXGI runtime interface
To match the D3D11.4 update, DXGI interfaces were updated to DXGI 1.5.
This allows application to query for HDR support. HDR itself is not supported.
Support for GDI interop with DXGI surfaces was added to fix an issue with the Rockstar Game Launcher. Note that the launcher itself also requires fixes to Wine's Direct2D implementation, see #1196.
Resource mapping improvements
d3d11.allowMapFlagNoWait option is now enabled by default, which may improve performance in certain games. An issue that would prevent it from working correctly in The Witcher 3 and other games has been fixed, and synchronization now behaves more like it would on a native D3D11 driver.
Note: This change may introduce regressions. When reporting a bug, please check whether setting
d3d11.allowMapFlagNoWait = False in the configuration file fixes your problem and include this information in your bug report.
Bug Fixes and Improvements
- Fixed a potential performance issue in games making heavy use of Deferred Contexts, such as Dark Souls III and Sekiro: Shadows Die Twice.
- More accurate resource tracking may in some cases lower CPU overhead slightly.