doitsujin / dxvk

Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine
zlib License
12.95k stars 832 forks source link

[d3d9] Various vendor formats adjustments #4086

Closed WinterSnowfall closed 2 months ago

WinterSnowfall commented 3 months ago

Fixes #4098.

Tests of both modern and d3d8/d3d9 era drivers show that D16_LOCKABLE is and was only ever supported on AMD.

P.S.: Reference outputs here.

I've also taken the liberty to clean up the D32 configs and what was left of the validation logic, since we've removed support for it globally quite some time ago.

WinterSnowfall commented 2 months ago

So, it turns out the D3D9Options used in format selection came from the interface... where the vendorID is always returned as 0. Thanks to @Blisto91 for spotting the problem. I've moved back the formats selection logic directly "on site", which should be more robust.

Disabling DF formats on Nvidia properly fixes #4098.