which game is this specifically, which API, and do you know which change made it work?
In general there's no real way to distinguish between DXVK versions from the D3D side.
Splinter Cell Chaos Theory Versus using the Reloaded or Enhanced mod and DXVK is loaded using x86 d3d9.dll. Lighting in this game was broken on modern windows/GPUs and previously I had to make a different fix for DXVK and regular DX. I never managed to get the 'God Rays' lighting effect to behave on DXVK before 3.0, so I had to turn it off and a few other effects got lost as a side effect. Now the regular DX fix is perfect on DXVK and I assumed it was the 3.0 shader rewrite which fixed it
SK just checks for dxvk by scanning the dll for its name.
You can do the same for DXVK: and then after a NULL character you get your version.
please just remove your workarounds and not care about supporting older DXVK versions.
That is generally what I'd recommend as well, the only real problem I guess is communicating that Linux users will have to use proton-experimental for the forseeable future.
Since the use case here is mainly resurrecting old games (chiefly on windows), I'm afraid some of their users might as well still be using 1.10 too.
I once had an idea to make DXVK version detectable by properly align DeviceIdentifier behaviour to Microsoft document (https://github.com/doitsujin/dxvk/pull/4869#discussion_r2060261986).
In my suggestion before we can combine GPU name and DXVK version to generate unique GUID for each combination.
Not sure whether we should go with such implementation, or we need some better solution.
But for this specific issue, my suggestion is simply don't do any special hack for DXVK, treat it as just some normal DX9 renderer, and it's user's responsibility to keep DXVK updated.
proton experimentalx1 2026-07d3d9.dllx1 2026-07
I'm supporting an old game and prior to dxvk 3.0 I had to disable certain graphics features to stop rendering artifacts. With dxvk 3.0+ the game is now flawless, so I can turn those features back on.
Is there a reliable way to detect dxvk 3+ which will keep on working going forward?