Thanks for bisecting this, unfortunately I don't quite understand why this particular commit breaks this and therefore I also don't know how to fix this without reverting the performance optimization. Without an apitrace I also cannot tell what the game is doing.
Any idea if this game actually uses VSSetConstantBuffers1 and friends?
Can you test whether this patch fixes the problem? It effectively reverts the problematic commit.
wow.patch.txt
Yes, the patch fixes the problem.
I managed to capture an API trace on Windows. However, I am unable to replay the trace when using Wine regardless of dxvk. It crashes with the following log:
8 @0 IDXGIAdapter3::QueryInterface(this = 0x2b10c7ba140, riid = IID_IDXGIAdapterInternal2, ppvObj = &0x2b10c7ba1c8) = S_OK
8: warning: unknown object 0x2b10c7ba1c8
8: warning: failed with 0x80004002 (E_NOINTERFACE):
002c:fixme:dxgi:DXGID3D10CreateDevice Ignoring flags 0x100.
20 @0 IDXGIAdapter3::EnumOutputs(this = 0x2b10c7ba140, Output = 1, ppOutput = &0x2b17e2c9e90) = S_OK
20: warning: failed with 0x887a0002 (DXGI_ERROR_NOT_FOUND): The item requested was not found. For GetPrivateData calls, this means that the specified GUID had not been previously associated with the object.
22: debug: apitrace: warning: caught exception 0xc0000005
apitrace: warning: caught exception 0xc0000005
22: error: caught an unhandled exception
Another trace out of this bugtracker (Stalker Clear Sky) is working fine.
I can upload the apitrace for you. However, because I am not able to replay the trace I cannot guarantee that the trace contains the flickering issue.
Thanks, that should be at least somewhat useful.
@kleest can you test if this branch works correctly with World of Warcraft? It's basically a reimplementation of the optimization that was causing this issue, but with a fix applied.
That branch works correctly. Note: As I don't have an active subscription, I tested it in an area accessible through starter edition, where f501ebce973d26d1d4e86911526ec73690f6208e caused the issues as well.
Thank you for your work!
0x80004002x1 2019-060x887a0002x1 2019-060xc0000005x1 2019-06
Starting with commit f501ebce973d26d1d4e86911526ec73690f6208e (bisected), some textures begin to flicker. I did not manage to produce an apitrace, and the validation layers log does not contain any useful difference between a good and bad commit. If it helps, I can record a video.
Software information
System information
Apitrace file(s)
--
Log files
d3d11.log:
Wow_d3d11.log
dxgi.log:
Wow_dxgi.log
Screenshots
Look at fence (bottom-left) and the lamps.

