ValveSoftware / Proton

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

Shadow of the Tomb Raider (750920) #1417

Open NTMan opened 6 years ago

NTMan commented 6 years ago

Compatibility Report

System Information

I confirm:

steam-750920.log

Symptoms

1) Low FPS on 4K normal preset (20-30 FPS) screenshot from 2018-09-12 21-35-55

2) Random crashes when I launch the game.

Reproduction

1) Launch the game. 2) Select "New Game" 3) Select difficulty level 4) Wait while loaded first level

Gameplay video

https://youtu.be/lVjLifLc2g0 https://youtu.be/mCZK73dmJzg

screenshot from 2018-09-12 23-38-38

screenshot from 2018-09-12 23-38-59

lieff commented 6 years ago

But 1920x1080/high/gtx980 seems playable. But there walls turns black when get close to them. Good: screenshot from 2018-09-12 23-06-30 Bad: screenshot from 2018-09-12 22-55-15

doitsujin commented 6 years ago

@NTMan can you reproduce the wall issue depicted above?

lieff commented 6 years ago

There no wall issue with medium settings. But another issue still there: screenshot from 2018-09-13 00-04-07 screenshot from 2018-09-13 00-04-09

Random black triangles on body skin.

doitsujin commented 6 years ago

I was asking specifically whether those issues are Nvidia-specific or not. For the record, what's your driver version?

lieff commented 6 years ago

Distro: Ubuntu 18.04 GPU: GTX 980, Nvidia proprietary driver 396.54 RAM: 16GB Proton 3.7-6 Beta

tmespe commented 6 years ago

The black wall issue seems to be an issue with tesselation, as turning that off fixes the problem for me.

I’m also having the black artifacts on skin, which does not seem to be resolved by changing any setting.

Distro: Ubuntu 18.10 GPU: Gtx 1080, Nvidia 396.54 Ram: 8gb Proton: 3.7-6 beta

NeptNutz commented 6 years ago

LOW Potato - A10-7800/GTX 660SC. Mint 18.3 (4.15.0-34, Nvidia 396.51). HIGH Potato - i5-3750 (4.0 GHz set mobo)/1070 Ti SC BLACK. SteamOS beta 2.166 (Linux 4.16, Nvidia 396.54)

Guy1524 commented 6 years ago

Doitsujin fixed this issue earlier today, this will roll out when proton ships DXVK 0.72

lieff commented 6 years ago

With latest dxvk git wall issue is gone, but rest issues remains, including black patches on body skin.

doitsujin commented 6 years ago

I'll test the game once it is actually released (they have a rather interesting definition of September 14th). Skin artifacts might be another case of weird Z-Fighting that some games have on Nvidia.

@NTMan It would be nice if could actually comment on whether those issues affect you, since you're on Vega, and whether there are other (visual) bugs on your end.

dlove67 commented 6 years ago

@doitsujin I'm not @NTMan, but I do have a Vega 64 to test with. After updating to 0.72 I'm seeing no issues so far, aside from normal shader caching stutter.

Faces appear clean, but I'll comment again if that changes.

Ubuntu 18.04 Mesa 18.3.0-devel from padoka ppa (llvm8.0) Kernel 4.18.0 (slightly customized to turn off AMD PSP, since it breaks reboots and passthrough) System Info

doitsujin commented 6 years ago

@dlove67 Thanks. I have access to the game now as well and can't reproduce those issues on Polaris either.

Nvidia users: Please keep an eye on future Vulkan beta driver updates.

lal12 commented 6 years ago

I got exactly the same issues mentioned above. I have a GTX 1060 6GB, 16GB RAM, i7-8086k and Ubuntu 18.04 with nvidia 396.54.

I tried to install the newest dxvk in steam to test this, I cloned dxvk, built it and then installed it to the proton prefix of steam (/.steam/steam/steamapps/common/Proton 3.7/dist/share/default_pfx/). It still has the black polygon problem, did I something wrong installing it?

doitsujin commented 6 years ago

The DXVK DLLs you need to replace are located in Proton 3.7/dist/lib64/wine/dxvk.

lal12 commented 6 years ago

@doitsujin thanks, after replacing the dxvk libs with the newest build, the black walls aren't there anymore with tesselation on.

SammyJames commented 6 years ago

Any idea what the flickering black dots on skin is related to?

DesNZ commented 6 years ago

Any idea what the flickering black dots on skin is related to?

@SammyJames Probably due to z-fighting on Nvidia cards with proprietary drivers.

I believe they (Nvidia) have a fix coming probably next week as a vulkan beta driver, you'll be able to update to it with the dev graphics-driver ppa not long after release.

lal12 commented 6 years ago

I got another problem today, but since it only occured once to me and was not reproducible I guess it is hard to debug: After doing a stealth kill on a trinity guy the screen slowly turned black, very slowly starting in a small black point everything around me dissappeard, I still could go to the menu and still heard sound. After changing some graphic settings the image returned and I could set the settings back without any further trouble.

Since I only had it once in multiple hours of gameplay it is probably not important or critical, maybe it is not even a Linux/Proton/Dxvk only bug, and could occur on windows too. I just thought write it down here, so should this issue later occur in a more troubling way or more often for somebody else, it is documented...

mati865 commented 6 years ago

@lal12 On Windows 10 with latest 399.24 Nvidia driver (tuned for this Tomb Raider) in DX11 I noticed flickering textures and black flashbacks in a few places. No such issues in DX12 mode so it might be driver/engine related.

flawedworld commented 6 years ago

Having tested with DXVK 0.72 with 2 RX 470's and a GTX 1070, no issues are present on AMD but on the nvidia driver there is lots of black spots all over lara when benchmarking. Hopefully nvidia will fix in vulkan driver update...

NalianNalis commented 6 years ago

@lal12 i can confirm this bug, it happened multiple times to me, Nvidia GTX 1080 396.54, Ubuntu 18.04, DXVK 0.72.

it is not stealth kill relevant as it happened also at a camp or after looting a box.

it looks like a sheet of paper slowly burning till it covers the whole screen. strangely the menues work and i resolve the problem by switching from fullscreen to windowed mode.

NeptNutz commented 6 years ago

@lal12 @Llorrin Okay, I have seen this (maybe twice), but it was many launches ago. I thought I resolved it by un-checking "Use this tool instead ..." in Steam Play settings, but that just might have been a happy (waving a dead chicken) coincidence.

NTMan commented 6 years ago

@doitsujin are you dxvk developer? I noted that the picture in game updates with jerks when the game is launched under the Wayland session or the game option "Exclusive fullscreen" set to off. And everything is so bad that even the mouse pointer move in the menu and on deskop (when the game minimized) with jerks.

Can you more investigations working dxvk under Wayland? Thanks!

doitsujin commented 6 years ago

That probably happens because everything goes through XWayland. The same thing happens when using X with a compositor, but that's not something that can be fixed in DXVK.

NTMan commented 6 years ago

@doitsujin Hmmm, ok Why another games works smooth under Wayland session? For example Wolfenstein II: The New Colossus I am want write bug report to XWayland but I don't know how describe what is culprit in jerks when I run "Shadow of the Tomb Raider".

Can you write bug report to XWayland?

doitsujin commented 6 years ago

Can anyone on Nvidia test whether the new 396.54.06 beta driver fixes the visual issues?

NeptNutz commented 6 years ago

No. (On my LOW spec machine ^) For BTAO, Motion Blur, Screen Space Reflections and TAA and above, there are still spots. I tried to get a screen cap, but after it crashed it keeps crashing to desktop before menu load.

DXVK v0.72 GeForce GTX 660 Driver: 396.54.06 Vulkan: 1.1.85

NeptNutz commented 6 years ago

Okay. Reboot and game validate (1 file fixed). Still there. (I arbitrarily chose BTAO for screen cap.) spotz

NeptNutz commented 6 years ago

For what it's worth, 410.57 didn't change this, and Vulkan is back to 1.1.82 for some reason. spotz_2

kakra commented 6 years ago

Here's a proton build which doesn't fix the black patches on Lara's skin but it raised FPS from 19 to 31 (according to the in-game benchmark) for me. It needs latest DXVK and the other setting fixes mentioned here. https://github.com/kakra/wine/releases/tag/wine-proton_3.7-3.16-unofficial-1

kakra commented 6 years ago

Meanwhile I rebased to wine-3.17 with some more patches included. This increases benchmark FPS from 31 to 32, and reduces CPU-bound from 12% to 4%: https://github.com/kakra/wine/releases/tag/wine-proton_3.7-3.17-unofficial-1

I wonder how far Valve has come yet with making a new Proton version based on newer wine - I guess there could be sleeping a lot of performance improvements and bug fixes done by Valve people.

Also, anyone here knows if it is possible to run any games with vkd3d yet? It looks like at least this one won't find a graphics adapter in DX12 mode. Which is probably also where the launcher error results from...

NeptNutz commented 6 years ago
kakra commented 6 years ago

Proton 3.16 may have changed the screen mode numbering. You may want to switch the resolution in-game back and forth.

NeptNutz commented 6 years ago

Okay, this appears not to be so bad at higher resolutions, but I'm testing at 720p on the lowest-of-the-low settings, including no AA. Whatever type of aliasing, or softening, is present in the current Proton (3.7) display goes completely away in 3.16, causing the fonts, etc. to get extremely jagged. There is a definite, visible difference. Not sure if it's just a more crisp render (therefore more 'correct') or what.

Anyway, there is nothing to gain right now on the 3.16 branch with this game. Looking forward, the 'jaggies' and v0.90 crashes seem like potential regressions. Nvidia Vulkan driver is null for spots so far.

kakra commented 6 years ago

I'm soon pushing an update to my own Proton build based on at least wine-3.18 and including some experimental scheduler improvements (still working on the rough edges). Rebasing was quite a hassle because upstream merged commits but it looks like I've got everything important. I'll test how it looks there with lower resolutions. Compared to Proton 3.7, the performance almost doubled. I didn't check with upstream Proton 3.16 yet (read: excluding my additional patches).

kisak-valve commented 6 years ago

Hello @NeptNutz, please open a separate issue report for the scaling issue with Proton 3.16-1. Make sure you include the known good and affected versions.

NTMan commented 6 years ago

@doitsujin Have you forgotten my request?

kakra commented 6 years ago

@NTMan Wolfenstein 2 New Colossus is afair a native Vulkan game, there's nothing to translate and frame timing becomes much easier... Doom 2016 is also a native Vulkan game which probably works just fine. In that perspective, your request has already been answered. I don't think there is any current priority to optimize for Wayland here. And then, it's probably also something which needs to be fixed on the Wine-side, too. I'd say that Wayland is just not ready for gaming yet (because of the games and layers involved, not because of Wayland).

Meanwhile, try to turn off vsync. It's probably something that you need to adjust in the game and the compositor (compositors tend to override the vsync setting).

kakra commented 6 years ago

@NeptNutz Is the other report already up? I'm seeing jagged appearance, too. The draw surface for the game is supposed to interpolate linearly but it doesn't, it uses nearest point algorithm.

NeptNutz commented 6 years ago

Not yet. I'm sharpening the language. ;-)

kakra commented 6 years ago

@NeptNutz Is it true that only DXVK games are affected (or in other words: games that render via Vulkan, directly or indirectly)? I can see that the OpenGL fullscreen hack uses GL_LINEAR but for Vulkan it seems to be hidden away in some precompiled shader. I was already finding that when I tried to implement super-sampling by using an oversized render surface: Instead of melting pixels together, the vulkan fullscreen hack would just skip pixels instead.

kakra commented 6 years ago

BTW @NeptNutz you should be able to alleviate this problem by choosing a resolution which is an even divider of your native resolution while width and height should be still dividable by 8 or 4 (not sure)... This may not be possible for all resolutions, tho. I'd have an idea of synthesizing such resolutions in my own build if you're interested. E.g. native = 1920x1080 -> hacked = 960x540 (divided by 2) or 640x360 (divided by 3)

NeptNutz commented 6 years ago

@kakra https://github.com/ValveSoftware/Proton/issues/1739

NeptNutz commented 6 years ago

@kakra Yes, it looks like a DXVK issue. I just tried OpenGL and the scaling looks correct (minus all the other issues and slowness). I suppose it was wrong to assume this was, overall, a Proton issue, but I, like most I suspect, have fallen into simply equating Proton and DXVK as one in the same. ;-)

kakra commented 6 years ago

No no no, DXVK does nothing wrong. The issue comes from the vulkan code path in Proton. I just wanted to make sure that your graphics setup is ok generally. Proton scales with GL_LINEAR in opengl mode but with "VK_NEAREST" (or whatever it's called there) in vulkan mode.

In the end, I think it should be made configurable because depending on the screen setup, your personal preference, or the game itself, one mode may have benefits above the other.

NTMan commented 6 years ago

@NTMan Wolfenstein 2 New Colossus is afair a native Vulkan game, there's nothing to translate and frame timing becomes much easier... Doom 2016 is also a native Vulkan game which probably works just fine. In that perspective, your request has already been answered. I don't think there is any current priority to optimize for Wayland here. And then, it's probably also something which needs to be fixed on the Wine-side, too. I'd say that Wayland is just not ready for gaming yet (because of the games and layers involved, not because of Wayland).

Meanwhile, try to turn off vsync. It's probably something that you need to adjust in the game and the compositor (compositors tend to override the vsync setting).

vsync was off all time. I just beg you to fill appropriate bug for XWayland (provide code sample which are demonstrate problem for XWayland developers) if the problem is in it. Moving from XWayland to X doesn't increase FPS, but make any motion smooth even on low FPS (in my case 22-30).

kakra commented 6 years ago

@NTMan Is it maybe this? https://bugs.freedesktop.org/show_bug.cgi?id=106736

NeptNutz commented 6 years ago

Launch crash is resolved as of Proton 3.16-2 Beta (DXVK v.0.90-8-g6558b27).

NTMan commented 6 years ago

The problem with jerking picture update under Wayland solved by this patch: https://gitlab.freedesktop.org/xorg/xserver/merge_requests/48 P.S. For this magic Vsync must be ON

NeptNutz commented 6 years ago

3.16-4 Beta crashes this on launch. (Nvidia 396.54.09)