ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.19k stars 1.06k forks source link

DX12 stop working with latest proton experimental since latest updates on nvidia hybrid setup #6472

Open an9949an opened 1 year ago

an9949an commented 1 year ago

System Information

I confirm:

Symptoms

Black screen in all dx12 games (tested in cyberpunk, deep rock galactic, little nightmares 2). Game work (i hear the sound, even see in nvidia-settings that GPU busy and vram used) but no image. Probably it start happens since vkd3d upgrade to 2.8. All older (with vkd3d 2.7) proton versions works as expected. DirectX11 games works without issues.

Reproduction

Run any dx12 game on proton-experimental-7.0-20230123 with nvidia hybrid graphics setup. Logs for Cyberpunk 2077 attached.

steam-1091500.log

kisak-valve commented 1 year ago

Hello @an9949an, your system information tells us that the Vulkan render paths are not healthy ( https://gist.github.com/an9949an/06e201830977b9fa5c1075c3a536127c#file-gistfile1-txt-L262-L272 https://gist.github.com/an9949an/06e201830977b9fa5c1075c3a536127c#file-gistfile1-txt-L489-L499 ) without Proton being involved.

I would try temporarily removing / disabling MangoHUD and vkBasalt, then see if there is an improvement in the health of those render paths, and if it does, then re-introduce them one by one to see which is having a bad interaction with the video driver.

an9949an commented 1 year ago

Hello @kisak-valve, thank you for the answer! Complete disabling of vkbasalt and mangohud didn't help. Still black screen in dx12 games. New sysinfo. (looks like issue you pointed still there) Two new logs attached. The first one is unsuccessful with proton experimental and second one is successful with 7.0.5. unsuccessful-steam-1091500.log successful-steam-1091500.log

kisak-valve commented 1 year ago

You've implied that an older build of Proton Experimental was in a known, working state. Can you explicitly note if this is true and what the version (date) of the build was?

This issue should also be reported to the VKD3D-Proton issue tracker.

Blind guess, maybe try setting one of the affected game's launch options to VKD3D_DISABLE_EXTENSIONS=VK_KHR_present_id,VK_KHR_present_wait %command% and see if that has an effect? (unlikely)

an9949an commented 1 year ago

@kisak-valve, adding this launch options fixed all the issues! All mentioned dx12 games works with the latest experimental after adding launch options.

Can you explicitly note if this is true

Yes, it's true, I used proton-experimental few weeks ago. After this issue start happens I switched to unofficial Proton-GE

Can you explicitly note if this is true and what the version (date) of the build was?

Unfortunately I don't remember the exact version. I can even do some experiments, but I don't know how to install specific version of proton-experimental. I figured out that the last working version of GE proton is 7.43 released at Dec 19, 2022

Should I create the same issue on VKD3D-Proton issue tracker? Probably this is the commit which produce such behavior

kisak-valve commented 1 year ago

That's the same commit I had in mind. This is most likely an NVIDIA driver bug that was hiding behind the previous driver bug that workaround was suppressing. There's not really anything to be done here from Proton's side to improve this situation, it's been fully scoped between the video driver and VKD3D-Proton.

Yes, please report this issue to VKD3D-Proton and NVIDIA with your findings.

an9949an commented 1 year ago

@kisak-valve, do you know how to report bugs to the NVIDIA? As I know their github repo is not right place to do so. Or am I wrong?

notpentadactyl commented 1 year ago

@kisak-valve, do you know how to report bugs to the NVIDIA? As I know their github repo is not right place to do so. Or am I wrong?

https://nvidia.custhelp.com/app/answers/detail/a_id/44/~/where-can-i-get-support-for-linux-drivers