protonscr

The Surge, visual glitches, missing objects

dxvkclosed feature setd3d11
doitsujin/dxvk#285 · opened 2018-04-15 by xpander69 · updated 2018-11-09 · 19 comments · github
Xxpander69 2018-04-15 github

Game starts fine and runs, but characters and some objects won't render, they sometimes render in certain angles (maybe something to do with the sun direction or some lights, hard to really pinpoint that)

ss_15042018_14 28 14

with wined3d it runs also but visuals are all messed up then.
https://www.upload.ee/image/8330408/ss_15042018_14.42.45.png

Software information

  • Tested with low and highest settings, result is same.
  • Tested with nvidias new and old compiler, same deal.

System information

  • GPU: GTX 1070
  • Driver: 396.18
  • Wine version: 3.5
  • DXVK version: 24f0528

Apitrace file(s)

Log files

Ddoitsujin maintainer 2018-04-21 github

Not sure if this is the cause of the rendering issues, but the game wants to map a depth-stencil image to host memory. While this is technically legal in D3D11, doing the same thing in Vulkan just doesn't work.

It might be possible to work around this by using compute shaders to pack and unpack data from depth buffers into a temporary buffer and doing all sorts of shenanigans, but to be perfectly honest, I'm tempted to tag this as wontfix unless more games with the same issue pop up.

For now, f71f527b4d4297e2b45bd0ba352bd8a5ac9cccc2 returns a proper error code if the game tries to map a depth-stencil texture to prevent a driver crash on RADV.

Xxpander69 2018-04-21 github

ohh :( i wonder what engine this game uses and if there are any other games with the same engine.

edit: Path engine it seems - List of clients here: http://www.pathengine.com/clients

Aabienz 2018-05-30 github

@xpander69 Can you post this to the official WIneHQ post too? https://appdb.winehq.org/objectManager.php?sClass=version&iId=35437

Xxpander69 2018-06-01 github

@abienz i need to create an account then. have been out of loop with gaming lately (summer time).
will try to do that at one point and test with newer wine versions.

Ooangelo 2018-06-03 github

I am also having the same issue. Using wine staging 3.9 without DXVK everything is rendered, but I get some light flickering on some surfaces. :-(

Mmimattr 2018-08-25 github

@xpander69 This title uses an in-house engine called FLEDGE with the most notable games including Lords of the Fallen and upcoming sequel The Surge 2.

@doitsujin Kudos on your incredible efforts so far! Most corner cases can probably be ignored but it's also important to show support for the few who create proper PC releases if/when possible. Will see if similar issues occur in other products moving forward.

Ddoitsujin maintainer 2018-08-25 github

It's not like I don't want to support this feature, but it is very tricky to do so, and impossible to do without any performance impact.

Jjrugia 2018-11-07 github

With the DRM-Free release of Lords of the Fallen, I was able to test this game under DXVK. It works fine for the most part but as with The Surge (same engine), it fills the log with the same depth-stencil error. The game seems otherwise playable if you can tolerate the occasional flickering with some of the graphics.

I advise running this game with the DXVK_LOG_LEVEL=none environment variable, just 5mins into the game and it generated a 1.2mb dxvk log.

Ddoitsujin maintainer 2018-11-07 github

I noticed the log spam in Lords of the Fallen, but since it appears to render correctly I didn't bother looking into it yet. Will do at some point, though.

Jjrugia 2018-11-07 github

I noticed the log spam in Lords of the Fallen, but since it appears to render correctly I didn't bother looking into it yet. Will do at some point, though.

I uploaded my savegame where this is easily noticeable. The "GOG.com" folder needs to be unpacked in the "C:\users\your_user\Local Settings\Application Data".

GOG.com.tar.gz

Ddoitsujin maintainer 2018-11-08 github

Update: Now it should hopefully work with latest master. I also managed to confirm that the engine does indeed use the mapped depth-stencil buffer to decide whether to render certain objects, although I don't quite understand how exactly it works.

Please note that the workaround I implemented to make mapping depth-stencil images possible requires synchronization with the GPU and is therefore very slow.

Mmozo78 2018-11-08 github

Thank you doitsujin! Can you provide me a precompiled build?

Ddoitsujin maintainer 2018-11-08 github

Sure, here you go:
dxvk-master.tar.gz

Mmozo78 2018-11-08 github

Thank you!
There is nothing slow on my end. The game is pretty playable on max graphics settings @ 1920x1080 and it keeps stable 60 FPS :)

Jjrugia 2018-11-08 github

Just tested it, does indeed fix the issue and the log is no longer flooded. I did notice a performance drop with a GTX 1060, however it's still playable on an average 40+ fps.

Thanks for the excellent work :D

Aarzardk 2018-11-09 github

Just tested it, does indeed fix the issue and the log is no longer flooded. I did notice a performance drop with a GTX 1060, however it's still playable on an average 40+ fps.

Thanks for the excellent work :D

Can confirm performance drop. On my 1050 Ti fps dropped down from 60 to 30.

Ddoitsujin maintainer 2018-11-09 github

Yes, the performance drop is expected and not a bug. It won't affect other games.

Xxpander69 2018-11-09 github

Works great now, thanks. Performance goes from 90+ down to 70-90FPS with a 1080Ti and all maxed 2560x1440, cant complain much, very playable.

Ddoitsujin maintainer 2018-11-09 github

Thanks for testing, guess we can finally close this one!

Launch options