protonscr

[d3d11, regression] Max Payne 3 LOD Fade Breaks After d66f838

dxvkclosed
doitsujin/dxvk#4072 · opened 2024-06-13 by TacoDeBoss · updated 2025-01-14 · 4 comments · github
TTacoDeBoss 2024-06-13 github

Max Payne 3 (204100)

In Max Payne 3, LODs of distant objects will fade from invisible when the player gets close. After commit d66f838, this effect is not being rendered, and the LODs simply pop-in.

It may be worth noting that on native d3d11 (AMD Adrenalin 24.5.1, Windows 11 23H2) the LODs fade in with a dithered pattern, whereas with the last good DXVK commit, the fade effect happens with a "proper" transparent effect instead, as seen in the bottom video below. I'd consider this behavior to be for the best, since it looks much better.

After trying for a few hours, I was unable to capture an apitrace on Linux or Windows, it simply causes the game to crash immediately. Let me know if I can get something useful for you any other way.

System information

  • GPU: AMD Radeon RX 6600
  • Driver: radv, 24.1.1-1 (Arch package)
  • Wine version: Proton Experimental, Wine 9.10
  • DXVK version: All commits after d66f838

master branch at 018db92

https://github.com/doitsujin/dxvk/assets/2870898/a4c6ba88-886e-4151-90d1-ad3a75faed72

last good at 007e9f4

https://github.com/doitsujin/dxvk/assets/2870898/c06cd12b-dbe6-4d51-9418-2b43a4c365c2

Ddoitsujin maintainer 2024-06-13 github

Is this with any sort of MSAA enabled, and what's the fastest possible way to repro this?

DXVK behaviour before d66f8385c38abc73c6b4f69a510282334f3faadf is both undefined in Vulkan and incorrect for D3D11 as documented in the respective specs, I don't know why this would break stuff.

Ddoitsujin maintainer 2024-06-13 github

So far I haven't been able to reproduce this, but that's probably because the missions in the beginning of the game don't really make use of LODs in the first place. Is there any way to get to the point in the video that doesn't involve playing this for 10+ hours? This game is already annoying the absolute living shit out of me and I really don't want to have to deal with this more than absolutely necessary.

TTacoDeBoss 2024-06-13 github

After further testing, it seems that commit d66f838 actually matches native d3d11 behavior, as I was mistakenly testing with MSAA off. Thank you for your time.

PPCLoadLetter2024 2025-01-14 github

I'm not quite sure what any of this means, but is there a way to fix the LOD pop-in? Because I experience it quite a bit.

And microstutter during cutscenes.

Proton versions