Releases: doitsujin/dxvk
Version 1.4.6
Update: Builds updated with 1ae7d4b to work around potential game crashes when the state cache is enabled, see #1266. The root cause is currently unknown and might be a driver bug.
Bug fixes and Improvements
- Fixed a bug potentially causing crashes during display mode changes or when closing a game.
- Fixed an issue that would cause CPU-limited performance to degrade over time, especially in workloads involving Deferred Contexts.
- American Truck Simulator / Euro Truck Simulator 2: Fixed rendering issues (#1250)
- Final Fantasy XIV: Fixed radial blur not working due to a division-by-zero workaround.
- Warcraft III Reforged: Implemented missing DXGI features to allow the game to run (#1252)
Version 1.4.5
Performance
- Enabled asynchronous presentation on all GPUs, and removed the
dxvk.asyncPresent
option. Previously, this option was disabled on Nvidia GPUs due to sporadic GPU hangs. If you still encounter issues, please make sure to use a recent driver version, and also test the current Vulkan developer beta (435.27.07) if possible. - Reduced the amount of thread synchronization around occlusion queries in order to improve multithreading efficiency.
These changes may improve CPU-bound performance in Final Fantasy XIV and other games that are at least partially bottlenecked by draw call throughput.
Bug fixes and Improvements
- Fixed occational hangs on Nvidia GPUs when resizing the game window.
- Fixed possible crashes when using Wine's DXGI implementation (PR #1240).
- Re-implemented constant buffer range check for Nvidia GPUs to use storage buffers instead of uniform buffers in order to match D3D11 behaviour.
- Dirt Rally: Fixed GPU hang on RADV caused by uninitialized UAV counters.
- Earth Defense Force 4.1: Fixed issue with certain objects and HUD elements not rendering (#1242).
- Final Fantasy XV: Fixed severe performance degradation when the Geomapping option is enabled, caused by a game bug.
- Metal Gear Solid V: Disabled loading of OpenVR DLLs to work around a weird issue with all rendering being flipped vertically (#1245).
- Metro 2033: Fixed rendering issues when Depth of Field is enabled, caused by a game bug.
Version 1.4.4
Bug fixes and Improvements
- Fixed a bug introduced in DXVK 1.4.3 where invalid state cache entries would be generated in some cases, leading to invalid Vulkan API usage. Any broken entries will be removed from the cache automatically.
- Fixed Vulkan validation errors with geometry shaders not declaring an invocation count.
- Fixed potential read-after-write hazards involving vertex and index buffers.
- Minor optimizations for Stream Output and Append/Consume buffers (used e.g. by Unity Engine).
- Reduced memory footprint of small, frequently-updated buffers.
- Removed useless
d3d10.enable
configuration option. - Skyrim SE: Worked around multiple ENB bugs to fix crashes (#865)
- Saints Row 3/4 and Titan Quest: Added workaround for flickering issues on Nvidia (PR #1233)
Version 1.4.3
Bug fixes and Improvements
- Implemented a new state cache file format which will lead to significantly smaller files. State caches from previous DXVK versions will be converted automatically.
- Further reduced CPU overhead, particularly in games with a large number of different shaders.
- Fixed incorrect barriers in case graphics shaders write to UAVs.
- Fixed incorrect MSAA sample positions being reported to shaders.
- Fixed some MSVC compiler warnings (#1218).
Version 1.4.2
Bug fixes and Improvements
- Minor reduction of CPU overhead
- Fixed a minor performance regression introduced in 1.4.1 in GPU-bound scenarios.
- Fixed a case of incorrect NaN behaviour in shaders.
- Fixed various minor DXGI issues to improve pass rate in wine tests.
- Call of Duty: Modern Warfare Remastered: Report all GPUs as Nvidia to work around game crashes.
Version 1.4.1
Bug fixes and Improvements
- Fixed some potential crashes in D3D10 code.
- Fixed incorrect handling of
UNDEFINED
primitive topology. - Device loss errors will now be forwarded to the application so that it can react accordingly.
- Batman: Arkham City: Fixed a regression causing the game to crash. (#1203)
- Hitman 2: Reporting all GPUs as Nvidia GPUs to work around issues with the AMDAGS library introduced with a recent game update. (#1201)
- Ni no Kuni Remastered: Implemented missing shader instructions to fix crashes and rendering issues. (#1200)
Version 1.4
Features
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
The 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.
Version 1.3.4
Bug fixes and Improvements
- Added workaround for failing winelib builds with wine 4.15 (#1179)
- Fixed a potential memory leak in games using Direct2D (issue found by @jp7677)
- Control: Enabled
d3d11.allowMapFlagNoWait
option to improve GPU utilization. - Quantum Break: Fixed performance issue affecting Nvidia and older AMD drivers.
Version 1.3.3
Bug fixes and Improvements
- Improved Clang and libc++ compatibility (PR #1173)
- Implemented proper hazard tracking for resource views, as mandated by the D3D11 runtime. This fixes visual artifacts in Shining Resonance: Refrain on AMD GPUs.
Note: This may have a small performance impact in some games. - Far Cry Primal: Worked around a weird issue causing the game's graphics to turn red
- SteamVR Performance Test: Fixed broken rendering caused by a bug in the deferred context implementation (#1160)
Version 1.3.2
Update: Binaries have been re-built with bd40b05.
Bug fixes and Improvements
- Fixed a regression that caused crashes and rendering issues Dishonored 2, The Division, Anno 1800 and potentially other games (#1148, #1149, #1151)
- Fixed a bug that could lead to atomic append/consume operations in fragment shaders being executed incorrectly. This fixes possible hangs in Sunset Overdrive.
- Fixed an issue where geometry shaders would emit more components than supported by the hardware (#1121).
- Slightly reduced CPU overhead in some DirectX 11.1 games, such as World of Warcraft.
- Per feature request, added the
dxvk.hud
configuration option to enable the HUD. This option will be used if theDXVK_HUD
environment variable is not set. - On Nvidia GPUs, presentation will now be performed on the main thread again in an attempt to improve stability. Asynchronous presentation is still enabled on AMD and Intel GPUs.