Patreon Logo Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal Logo PayPal. You can also buy games using our partner links for GOG and Humble Store.
We use affiliate links to earn us some pennies. Learn more.

The D7VK project for providing Direct3D 7 support on Linux with Wine / Proton has expanded in the version 1.1 release to add experimental Direct3D 6 support.

Like how DXVK started with the developer wanting to play NieR: Automata (see my original interview), the D7VK developer wanted to play Sacrifice and Disciples II on top of DXVK and so they started D7VK to get them working well.

In the now updated readme file in for the 1.1 release the GitHub the developer explains:

Wait, what? There's a D6VK in my D7VK! How did it get there?

After looking over the D3D6 SDK documentation, it turned out to be somewhat approachable, so I have implemented it. Support for D3D7 still remains the main goal of the project, but support for D3D6 will also be provided, as an experimental addition. From a features and general compatibility standpoint, expect it to fare somewhat worse than D3D7, because, as I've said before: the further we stray from D3D8/9, the further we stray from the divine.

Why not spin off a D6VK or rename the project?

All APIs prior to D3D8 fall under the cursed umbrella of DDraw, so it makes absolutely no sense to split things up. As for any renaming, that won't happen, since the project's main focus remains unchanged.

Does that mean you'll add support for D3D5 and D3D3 at some point?

No. But we fully support D3D4 already, heh. Jokes aside, I have looked over earlier API documentation as well, and I can confidently say that while D3D6 is still reasonably similar to D3D9, earlier APIs employ a much, much cruder rendering pipeline that simply isn't worth mapping onto DXVK's D3D9 backend. It also makes very little sense to consider it, especially given its complexity, since there's very little hardware acceleration to speak of before D3D6 (and even in D3D6, if we're to be honest).

Other changes from the 1.1 release include:

  • Added a workaround for Sacrifice which enables the game to properly use 32-bit color / z-buffer depth. This is a known problem/limitation of the game, which tries to use D32 for depth and falls back to 16-bit if it is unavailable (D32 has always been generally unsupported, and is unsupported universally on modern drivers). The workaround vastly improves distant geometry rendering.
  • Added support for strided primitive rendering, thanks to @CkNoSFeRaTU, which means Sacred is now playable.
  • Worked around missing/swapped mip maps in Star Trek: DS9: The Fallen (#58), thanks to @esdrastarsis.
  • Added a workaround for Conquest: Frontier Wars, which enables the use of D7VK for in-game rendering, assuming 3D acceleration and the desired resolution are set up beforehand. The game relies on highly cursed DDraw interoperability to work, so getting anything out of it is nothing short of a miracle.
  • Fixed swapped mip maps in Gothic/Gothic 2 (#56).

Source: GitHub

Article taken from GamingOnLinux.com.
5 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly checked on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
All posts need to follow our rules. Please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Readers can also email us for any issues or concerns.
No comments yet! Subscribe

While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon Logo Patreon. Plain Donations: PayPal Logo PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register