More than three months after itsย previous 2.4 version, the latest DXVK 2.4.1 has just been released. It brings a host of general improvements and specific fixes for D3D8, D3D9, D3D11, and DXGI, thus enhancing the overall gaming experience on Linux by improving compatibility and performance for a variety of games. Hereโs whatโs new.
DXVK 2.4.1: General Improvements
To start with, DXVK 2.4.1 introduces dynamic determination of memory chunk sizes based on the application’s current memory allocation. This change is expected to improve out-of-the-box behavior in various game launchers. Consequently, the dxvk.maxChunkSize
option has been removed.
Additionally, an issue where the Vulkan swap chain would not always recreate properly in native Wayland environments has been fixed. Another fix addresses descriptor pools growing too large on Nvidia graphics cards in certain situations.
Moreover, the default shader code generation for DXBC mad
instructions has been altered. This change works around flickering issues in games that use different vertex shaders to render the same geometry across multiple render passes. As a result, the d3d11.longMad
and d3d9.longMad
options have been removed.
D3D8 and D3D9 Enhancements
Moving on, the D3D8 implementation has received improvements in robustness through better error handling and fixes for various memory leaks. Performance has been slightly enhanced by optimizing vertex buffer uploads. Furthermore, significant performance boosts have been achieved in some games that utilize Software Vertex Processing.
The update also resolves full-screen presentation issues in certain Game Maker titles and removes unnecessary VK_IMAGE_USAGE_SAMPLED_BIT
flags from textures that don’t require them.
In addition, strict float emulation is now enabled by default on AMDVLK drivers, following optimizations that make use of patterns emitted by DXVK. It’s worth noting that this was already the case for RADV drivers.
Game-Specific Fixes
Several game-specific issues have also been addressed:
- Chrome: Gold Edition now has a 60 FPS limit enabled to work around game issues at higher frame rates.
- Grand Theft Auto: San Andreas sees a fix for a regression that caused crashes with DXVK 2.4.
- Operation Raccoon City has a workaround implemented for a game crash.
- Prince of Persia (2008) now has a 240 FPS limit enabled to prevent issues at very high frame rates.
- Rayman 3 benefits from fixes for missing geometry.
- Serious Sam 2 sees in-game video fixes.
- Splinter Cell: Pandora Tomorrow has a 60 FPS limit enabled to fix broken input and physics.
- The First Templar receives fixes for lighting issues.
- The Sims 2 fixes a regression that caused crashes with earlier DXVK versions.
D3D11 and DXGI Updates
Furthermore, the update works around a general issue where some games defaulted to an integrated GPU based on the reported amount of available video memory. It also addresses an issue where various games misbehaved when the available VRAM was reported as a power of two.
Shader code generation for dot product instructions has been adjusted to align more closely with native driver code generation. This change fixes a water rendering issue in Trails through Daybreak on Nvidia GPUs.
Additionally, a basic dead code elimination pass has been implemented to avoid generating invalid SPIR-V shaders in rare cases. Note that these shader-related changes will invalidate existing Fossilize caches.
Regarding user experience, games will now exit fullscreen mode when the game window loses focus. This behavior is closer to that of Windows and resolves issues with games hanging on some setups.
Moreover, built-in options in DXVK for a game will now take precedence over options enabled or disabled by DXVK-NVAPI, fixing a performance regression in God of War on Nvidia GPUs.
Additional Game Fixes
- Batman Arkham Knight now starts correctly without being blocked by the detection of an Intel GPU.
- Hunt Showdown has a crash fix related to DXVK reporting a very high UMD driver version.
- Kena: Bridge of Spirits sees a workaround for a water rendering issue when an Intel GPU is detected.
- Microsoft Flight Simulator has a fix for a garbled screen on startup.
- Senran Kagura Peach Ball corrects character models that were previously rendered incorrectly.
- The Sims 4 benefits from a workaround for a crash caused by a use-after-free bug in the game.
For more information on all changes in DXVK 2.4.1, visit the changelog.