protonscr

Ratchet & Clank - blocky corruption when looking at rift portals

vkd3dclosed
HansKristian-Work/vkd3d-proton#1833 · opened 2024-01-13 by aufkrawall · updated 2024-02-01 · 11 comments · github
Aaufkrawall 2024-01-13 github

There is blocky corruption when looking at rift portals:
1895880_20240112000035_1

Happens with both RADV & amdvlk. Doesn't happen with native D3D12. Issue seems to disappear at some rendering/upsampling resolutions, but happens at most of them and also native 1440p TAA.

Software information

Ratchet & Clank, latest Steam version, maximum settings (RT off), TAA, 1440p

System information

  • GPU: RX 7800 XT
  • Driver: RADV mesa-git 183253.e36235e6d53 / amdvlk v-2023.Q4.3
  • Wine version: Proton Experimental
  • VKD3D-Proton version: 12f561cfe2156714ba17d3322230b87b65739714

Log files

steam-1895880.7z.zip

BBlisto91 2024-01-13 github

Can you highlight where on the image the issue is? I'm not sure i see it

Aaufkrawall 2024-01-13 github

Sure:
1895880_20240112000035_1

Edit: Btw: Some textures/decals sometimes don't seem to load at high resolution (textures set to very high). But don't know if native D3D12 has the same issues (it stutters more though).

BBlisto91 2024-01-13 github

I haven't been able to reproduce this ingame at the same spot so far with either amdvlk or radv on my RX 6800. I have a 1080p monitor but tried faking 1440p with gamescope and also tried different upscaling techniques.

Will try again with rdna3 later.

Aaufkrawall 2024-01-13 github

Thanks!

For whatever reason, I now can't reproduce with 100% TAA anymore either. But with any upscaler set to "quality", it triggers the issue:
1895880_20240113233318_1
1895880_20240113233306_1

Aaufkrawall 2024-01-13 github

The issue seems to be caused by XeGTAO.

BBlisto91 2024-01-13 github

Okay sorry yes i can reproduce it now.

Attached a Vulkan renderdoc capture made with XeGTAO and XeSS on a RX 6800 with radv 23.3.3. Notice that the right side of the portal is darker which is the side with the glitching (it can move with the camera)
https://drive.proton.me/urls/Y0XQZRP5G0#zSl7mhPv75bL

HHansKristian-Work maintainer 2024-01-19 github

I reproduce this on Windows too.

portal-bug

HHansKristian-Work maintainer 2024-01-19 github

The portal rendering seems to be contained within a bounding box.

There is an offset applies to the GlobalThreadID when writing the input to XeGTAO buffers.

copy_input

But in the CS_XeGtaoFinalize pass, there is no offset in the shader, so the portal AO gets a sliced copy.

final

final2

That causes either darkening or garbage in the right half.

HHansKristian-Work maintainer 2024-01-19 github

Closing as not our bug.

Aaufkrawall 2024-01-19 github

Thanks for looking into this and your detailed explanation, really appreciated! I guess then it's hardly noticeable on Windows for some random/racy reasons.

Btw. did you notice that some textures aren't streamed in full resolution with VKD3D-Proton? It seems to match the result on Windows when you delete the DirectStorage DLLs there.
1895880_20240119173548_1

Windows with DS:
RiftApart_2024_01_19_17_41_25_268

This is right after loading the level for the first time, no RT.

Aaufkrawall 2024-02-01 github

@Blisto91 Can I convince you to check whether you can confirm the texture issue? :)

Proton versions