HansKristian-Work / vkd3d-proton

Fork of VKD3D. Development branches for Proton's Direct3D 12 implementation.
GNU Lesser General Public License v2.1
1.91k stars 199 forks source link

Witcher 3 freezes - commit 21a920d Re-enable KHR_present_wait #1638

Open adolfotregosa opened 1 year ago

adolfotregosa commented 1 year ago

I've narrowed it down to commit 21a920d -> vkd3d: Re-enable KHR_present_wait on NV 535.xx+.

The game simply freezes in a few minutes of playing. Have to force close it. I compiled up to last available commit and game still works fine if I disable KHR_present_wait on device.c

System information

steam-18216720984172396544.log

Zenzi0 commented 1 year ago

In Cyberpunk 2077 (https://github.com/HansKristian-Work/vkd3d-proton/issues/1635) someone also complained about crashes a few minutes into gameplay. I'm not sure whether these two games actually have that much in common. But it could be related.

HamilcarR commented 1 year ago

16236.857:011c:012c:fixme:oleacc:find_class_data unhandled window class: L"#32769" 16236.857:011c:012c:fixme:uiautomation:uia_get_providers_for_hwnd Override provider callback currently unimplemented. 16236.857:011c:012c:fixme:uiautomation:msaa_provider_GetPropertyValue Unimplemented propertyId 30024 16236.858:011c:012c:fixme:uiautomation:uia_element_GetCurrentPropertyValueEx Default property values currently unimplemented 16236.858:011c:012c:fixme:uiautomation:uia_element_GetCurrentPropertyValueEx Default property values currently unimplemented 16236.858:011c:012c:fixme:uiautomation:msaa_provider_GetPatternProvider Unimplemented patternId 10002 16236.858:011c:012c:fixme:uiautomation:nc_provider_GetPatternProvider 00000000008F5630, 10002, 0000000001B2EC90: stub 16236.858:011c:012c:fixme:uiautomation:base_hwnd_provider_GetPatternProvider 00000000008F55A0, 10002, 0000000001B2EC90: stub

This is what I get also when cyberpunk crashes. it seems to be a driver problem , I opened a post about it on nvidia's forum : https://forums.developer.nvidia.com/t/cyberpunk-2077-1-62-1-63-crashes/260799

adamnv commented 1 year ago

Thanks for finding this; for those seeing the issue, do you have ForceFullCompositionPipeline enabled in the X config / nvsettings? Does it help if you turn that off? Thanks.

adolfotregosa commented 1 year ago

I do not. It is off

adamnv commented 1 year ago

Well, hmmmm! Thanks for checking. Could you please reproduce the problem and then run nvidia-bug-report.sh and attach the output here (or otherwise upload it somewhere)? Cheers.

adolfotregosa commented 1 year ago

nvidia-bug-report.log.gz steam-18216720984172396544.log

Here. Do you see anything obvious??

adamnv commented 1 year ago

Great, thanks! I've passed it on to the big brains who have suspicions about what's going on. :)

adolfotregosa commented 1 year ago

Great, thanks! I've passed it on to the big brains who have suspicions about what's going on. :)

Cool cool ! Ask the big brains if they can also help make ray tracing work correctly on this game :+1: :+1: :smile: Thank you

adolfotregosa commented 1 year ago

Seams to be fixed in nvidia driver 535.98. Gonna play the game a few days to be sure.

EDIT: nope, just lasted longer. Still have to manually compile vkd3d with KHR_present_wait disabled

HamilcarR commented 1 year ago

Seams to be fixed in nvidia driver 535.98. Gonna play the game a few days to be sure.

EDIT: nope, just lasted longer. Still have to manually compile vkd3d with KHR_present_wait disabled

When you say that you disable present_wait, you're just replacing : if (info->vulkan_1_2_properties.driverID == VK_DRIVER_ID_NVIDIA_PROPRIETARY && VKD3D_DRIVER_VERSION_MAJOR_NV(info->properties2.properties.driverVersion) < 535) by

if (info->vulkan_1_2_properties.driverID == VK_DRIVER_ID_NVIDIA_PROPRIETARY) ?

can you also tell me how do you indicate to proton the custom build of vkd3d you compiled ?

mbriar commented 1 year ago

You can just use VKD3D_DISABLE_EXTENSIONS=VK_KHR_present_wait as environment variable.

1basti1 commented 9 months ago

I don't know if I'm right here. But I just updated proton 8 on my steam deck and witcher 3 is freezing in the menus. I never had a crash or freeze in 40h of playtime this month. But today 2 freezes. I now use a old version of proton GE and it seems to work now.

Edit: I should just do a new issue probably. But I'm way too lazy right now. sorry.

esullivan-nvidia commented 6 months ago

@adolfotregosa Are you still able to reproduce this issue with the most recent r550 driver and Proton 9?

adolfotregosa commented 6 months ago

@adolfotregosa Are you still able to reproduce this issue with the most recent r550 driver and Proton 9?

I will have to check.. haven't played the game in quite some time now. When I get a bit of time will test it.