Featured image of post D7VK: Direct3D wrapper for classic games released in version 2.1

D7VK: Direct3D wrapper for classic games released in version 2.1

D7VK, a fork of DXVK that lets old Direct3D 3/5/6/7 applications run on Wine, has been released in version v2.1.

Rather than new features, this release focuses on internal optimization: overhead in object creation, destruction, caching and copy paths was trimmed down, cutting loading and startup times in several titles by half or more. A number of game-specific bugs were also fixed.

  • Reduced the overhead of object creation (by trimming down lifecycle tracking)
  • Fixed a use-after-free bug on attached depth stencil surface release
  • Added optional direct path for GetDC/ReleaseDC calls with variable performance impact
  • Added an optimistic path for the early initialization of D3D7/6 vertex buffers
  • Further optimized logging use to reduce CPU overhead
  • Enhanced surface uploads/downloads performance in specific titles
  • Reduced overhead when D7VK acts as DDraw forwarding proxy
  • Added an alternate pixel center config option addressing artifacts in Resident Evil 2
  • Improved performance in Project I.G.I. and Sonic World DX via managed vertex buffers
  • Addressed buffer access patterns in Empire Earth: The Art of Conquest
  • Fixed missing main menu backgrounds in MechWarrior 3
  • Non-SSE2 ProcessVertices() fallback helpers for ARM architecture compilation
  • Corrected DDraw surface description application bug
  • Added support for R3G3B2 8-bit color surfaces (disabled by default)
  • Extended 8-bit mode masking config option for DDraw display enumeration
  • Optimized device capabilities struct copies and device enumeration

D7VK

Source: GitHub

PlayingTux – Playing Games on Linux - since 1995.