DXVK 3.0.1 improves Proton compatibility for older Direct3D games

DXVK 3.0.1 disables secondary command buffers on desktop GPUs

Maintenance release fixes several Direct3D 9 games.

DXVK 3.0.1 has been released as a bug-fix update for the Direct3D 8, 9, 10 and 11 translation layer used by Wine and Valve’s Proton. The update follows DXVK 3.0 from June 25 , which brought a new dxbc-spirv shader compiler and enabled Vulkan descriptor heaps by default on supported drivers.

Secondary command buffers disabled

The main change in DXVK 3.0.1 is that secondary command buffer usage is now disabled on all desktop GPUs. According to the release notes, this path can slightly reduce performance in a small number of games with suboptimal MSAA resolve patterns. The same code path also caused rendering bugs and GPU hangs, while its main gains were seen on tiling GPUs.

The update also fixes a Direct3D 9 rendering regression affecting several games on some drivers. The release notes mention Black Mesa, Gothic 3 and GTA IV as affected titles . DXVK 3.0.1 also fixes a crash when games unload D3D libraries while the D3D device is still active.

Other fixes cover stutter on 32-bit NVIDIA drivers when descriptor heaps are enabled and GPU synchronization around stream output. The latter can affect older Unity Engine games using Direct3D 11. DXVK also includes Windows-specific workarounds for NVIDIA sampler creation and an Intel driver issue with graphics pipeline libraries.

Older games get specific fixes

Several game-specific fixes are included as well. Empire Earth 2, Fallout 3, Fruit Ninja, Kane & Lynch: Dead Men, King’s Bounty: The Legend, Manhunt, Splinter Cell 3 and Total War: Medieval II are all mentioned in the changelog. The fixes cover rendering regressions, performance regressions, MSAA issues, lighting problems and water rendering.

There is also a note for Intel users. An ANV driver issue can lead to GPU hangs in some Direct3D 9 games on Intel Alchemist GPUs and older hardware. DXVK now enables descriptor buffers on those GPUs by default as a workaround, but affected users are advised to keep graphics drivers updated.

DXVK 3.0.1

Bug fixes and Improvements

  • Disabled secondary command buffer usage on all desktop GPUs. This may slightly impact performance in a small number of games with suboptimal
  • MSAA resolve patterns, but has been a constant source of hard-to-debug rendering issues and GPU hangs, and the main benefits are only seen on
  • tiling GPUs anyway.
  • Fixed a rendering regression affecting numerous D3D9 games (including Black Mesa, Gothic 3 and GTA IV) on some drivers.
  • Fixed a crash when games unload D3D libraries while the D3D device is still alive.
  • Fixed an issue that would cause stuttering on 32-bit Nvidia drivers with descriptor heaps enabled.
  • Improved GPU synchronization around stream output. This may affect older Unity Engine games using D3D11.
  • Worked around a Windows-specific issue where sampler creation would fail on Nvidia.
  • Note: The root cause is not known, but may be linked to external overlays.
  • Worked around a Windows-specific Intel driver bug that would cause all games to hang after a short time with graphics pipeline libraries enabled.
  • Empire Earth 2: Fixed a regression where certain fixed-function setups were not handled correctly.
  • Fallout 3: Fixed shader compiler regression that would cause rendering issues with MSAA.
  • Fruit Ninja : Fixed long-standing lighting issue.
  • Kane & Lynch : Dead Men: Fixed severe performance regression.
  • King’s Bounty: The Legend: Fixed performance regression.
  • Manhunt : Enabled 60 FPS limit to work around game issues.
  • Splinter Cell 3 : Fixed a rendering regression when enabling the Shader Model 3.0 option.
  • Total War: Medieval II: Fixed a water rendering regression.

Source: DXVK (Github)