HansKristian-Work / vkd3d-proton

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

Cyberpunk 2077: Crashes after first logo on AMD #461

Closed JonesGreen closed 1 year ago

JonesGreen commented 3 years ago

Hi @ all

I'm on proton 5.13-4, mesa-git and use a AMD Vega 56. I attached all additional info at the bottom. On release the game did not work and would always crash after the first logo. With the new game patch 1.04 the game worked ! I played for about 2 hours without any problems. (No change was made to mesa-git) After that I quit the game because I had something else to do. But now the game behaves like before and will not start and in result gives me colorful pixel noise on screen. I'm not sure if this a radv, game bug or vkd3d-proton bug. There are quite a few errors in the proton log, but I don't now if these are "normal" at this stage. If you require more information I will try to provide them. Thanks for your great work !

steam-1091500.log vulkaninfo.txt dmesg.txt systeminfo.txt screen

doitsujin commented 3 years ago

So there's a whole bunch of prose here but I'm missing one crucial detail: How can we reproduce this?

You're just getting a GPU hang, this isn't really expected but also not surprising considering how hopelessly broken the game is. We should probably not advertize the game as supported just yet though.

JonesGreen commented 3 years ago

Thank you for your very fast response. What would be a way so that you could reproduce this? If you can give me a tip how I can provide something, I will try it.

HansKristian-Work commented 3 years ago

I can reproduce it on 1.04 with 5700xt, but it is completely random, and knowing how broken the game is, I'm going to assume the game is buggy for the time being. I don't feel like spending days studying wave dumps right now just to prove a game bug.

It looks very similar to the random GPU hang you can get without mutable_descriptor_type, and that case was proven to be a game bug. It happens within a second or two of booting the game. After that however, I haven't had any hangs on 1.04.

screwylightbulb commented 3 years ago

So there's a whole bunch of prose here but I'm missing one crucial detail: How can we reproduce this?

You're just getting a GPU hang, this isn't really expected but also not surprising considering how hopelessly broken the game is. We should probably not advertize the game as supported just yet though.

I also had one GPU hang yesterday using an AMD setup. This was before the 1.04 patch. I did not bug report because I also cannot say how to reproduce. I do not have a log either, and it only happened after having the game running for about 8 hours. I was tabbed out at the time to my browser and went off to have a shower. When I got back my system was frozen and the whole screen was covered in some trippy coloured blocks.

screwylightbulb commented 3 years ago

I think most problems that exist right now should be fixed by CDPR, since I suspect vkd3d is already behaving as it should. Not sure if there's any communication with them though.

JonesGreen commented 3 years ago

~~After some more testing I found the culprit on my machine for the my gpu hang on startup. It is the steam overlay. When I disable the steam overlay for Cyberpunk 2077 the game starts up just fine. As soon as the overlay is enabled I get a gpu hang directly after the first logo everytime.~~

Edit: Sorry guys. It seems that it was just a fluke. That doesn't seem to fix it. I'll wait for more game patches

screwylightbulb commented 3 years ago

Wow, we have a fun one here. This is on an NVidia RTX 2070 Super. This is at the Relic stealing mission. When walking towards the secuirity scanner, everything goes black, and it stays black, even going through and up the elevator.

This should probably be a new issue with logs and such, but at the moment it might not be worth chasing after every such bug in proton when there are so many in-game bugs upstream.

See: https://youtu.be/D0i-0JB9D50

DistantThunder commented 3 years ago

gives me colorful pixel noise on screen.

Just to chime in, I had this exact crash on Mesa-git on the game with patch 1.0.4 yesterday on 5700XT, but never at boot. It's a shame AMDGPU can't prevent itself from hard crashes like this (my machine rebooted...).

screwylightbulb commented 3 years ago

Wow, we have a fun one here. This is on an NVidia RTX 2070 Super. This is at the Relic stealing mission. When walking towards the secuirity scanner, everything goes black, and it stays black, even going through and up the elevator.

This should probably be a new issue with logs and such, but at the moment it might not be worth chasing after every such bug in proton when there are so many in-game bugs upstream.

See: https://youtu.be/D0i-0JB9D50

Just had this happen again where you meet with Dex at the motel. Also found that when activating the scanner that works normally. So I guess it's a post processing effect of some sort causing it. Maybe I should just record some logs and pass it on.

doitsujin commented 3 years ago

This is on an NVidia RTX 2070 Super.

The game is currently expected not to work properly until either Nvidia implements the mutable descriptor type extension or CDPR fix their broken descriptor management. This can include crashes and broken rendering.

screwylightbulb commented 3 years ago

This is on an NVidia RTX 2070 Super.

The game is currently expected not to work properly until either Nvidia implements the mutable descriptor type extension or CDPR fix their broken descriptor management. This can include crashes and broken rendering.

Fully aware.

JonesGreen commented 3 years ago

Finally got it to work. I used that fix described here https://gitlab.freedesktop.org/mesa/mesa/-/issues/3960#note_728911 I only changed it to EB3033C9B8010000000FA28BC8C1F908 which is supposed the right replacement for the 1.04 patch. With this I can always reproduce this. Original .exe == always gpu hang and the modified .exe just works. When started up with the modified .exe the game works well. (About 7 hours in and no gpu hang.) But I also cannot explain why this tweak fixes the gpu hang.

RoyShapiro commented 3 years ago

@JonesGreen Thanks so much for posting this!

Even though I'm on NVidia GPU with AMD processor, this fix has allowed me to get past a certain "no-save" interactive cutscene (with a car chase in the beginning of the game), which I previously couldn't get past due to a 100% reproducible complete freeze with a known entry in syslog regarding a GPU malfunction.

Update: Update 1.05 seems to fix the issue, and doesn't require this patch.

Specs: AMD Threadripper 1920X, RTX 3090, Proton 5.13-4, Vkd3d-Proton built from commit https://github.com/HansKristian-Work/vkd3d-proton/commit/946bcd7922f77bf68636589b068998d414c2f853, Nvidia driver 455.46.02

Blisto91 commented 1 year ago

@JonesGreen Friendly necro ping. Is it safe to assume that this issue has been resolved with game and driver updates?

JonesGreen commented 1 year ago

@JonesGreen Friendly necro ping. Is it safe to assume that this issue has been resolved with game and driver updates?

Yes it is not an issue on my end anymore. Though I use a AMD 6700 XT now.

DistantThunder commented 1 year ago

No problem here on RDNA2 as well, can be closed I think.