Love your classic retro games? D7VK 2.0 is out now to bring more performance improvements for running retro Direct3D games on Linux. We also just had the DXVK 3.0.2 release to fix up some more modern games.
An impressive sounding release with the developer noting in some cases you’ll see a “2x(+) performance increase in some CPU limited scenarios” which sounds awesome. One of the games tested being Half-Life which showed a performance bump from 19.8FPS to hitting the 60FPS cap which is fantastic.
Some of what’s new from the changelog includes:
- Rebased on top of the upstream DXVK 3.0.2 release.
- Improved the performance of CPU ProcessVertices calls with handrolled SSE helpers, and fixed a few minor regressions, thanks to @CkNoSFeRaTU.
- Added a workaround for (D3D9) MANAGED pool buffer placement targeted at DEFAULT buffers, which drastically help with upload performance when said buffers are used for SWVP/ProcessVertices calls as well. This has had a positive effect on performance in Toy Story 2: Buzz Lightyear to the Rescue, SCP – Containment Breach and practically all GoldSrc engine titles, such as Half-Life.
- Stripped most debug loggers, and moved others away from hot paths, which apparently has had a drastic effect on performance in CPU limited scenarios.
- Worked around a WineD3D limitation concerning video memory bump luminance format surfaces, which has fixed minor rendering issues in Dungeon Keeper 2 and the Matrox G400 TechDemo.
- After a careful analysis of age accurate GPUs such as the Matrox G400, Nvidia Riva TNT2 and ATI Rage 128 on Windows XP, we’re now reporting the POW2 and non-POW2 conditional surface dimension caps globally. This has fixed clipping issues in various games, such as Empire Earth and removed the need for specific workarounds in Total Annihilation: Kingdoms, Revenant and a few other titles.
- Worked around projected light terrain Z-fighting on night tracks in Need for Speed: Porsche. Thanks to @CkNoSFeRaTU for helping out in determining the root cause of this game bug.
- Addressed several oversights and potential problems in the D7VK codebase (thanks to @hourianto for spending their tokens on an LLM-driven review pass, which was mostly useful).
- Create a HAL device in situations where a game passes an unknown GUID. This works around texture filtering issues in Revenant.
- Simplify surface attachment handling thanks to an upstream WineD3D DDraw bug being fixed, which speeds up all surface Flip calls.
- Fixed a black screen regression affecting The Sims: Complete Collection.
- Added a frame limit for Dungeon Keeper 2, to prevent runaway flame/water surface animations.
- Fixed a regression which caused some materials to be erroneously updated as if they were the currently set device material.
- Finalized the removal of stipple caps from reported device features, also based on observed values reported by age-accurate video cards.
- Only report
D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENTas a device FSAA capability, as per observed behavior of age-accurate video cards.
🌐 External Sources: github.com/WinterSnowfall/d7vk

