protonscr

Diablo 3 Reaper of Souls 64bit: Game starts with sound but only funky colours are displayed

dxvkclosed feature setd3d11
doitsujin/dxvk#37 · opened 2018-01-27 by pingubot · updated 2018-05-24 · 18 comments · github
Ppingubot 2018-01-27 github

Diablo 3 starts with dxvk,but it displays a white screen with dots in different colors. Log files attached.
Tested it with maximum settings (1920x1080). The following errors show up in the d3d11 log:

err: D3D11RasterizerState: Antialiased lines not supported
err: D3D11DeferredContext::Map: Not implemented
err: D3D11DeferredContext::FinishCommandList: Not implemented

Full logs are attached. I guess the cpu bound games like d3 and sc2 could really benefit from your vulkan approach.

Software information

Diablo 3, latest available patchset at 27.01.2018

System information

  • GPU: Nvidia GTX 970
  • Driver: Nvidia 390.12
  • Wine version: Wine Staging 2.20
  • DXVK version: DXVK Version 25.01.2018

Apitrace file(s)

  • Will provide later

Log files

Mmdrost 2018-01-27 github

Tested it with maximum settings

So with lower settings everything works?

Ppingubot 2018-01-27 github

Nope, doesn't work. The screen is black with the mouse cursor working instead of white with points in different colors and the mouse cursor working.

Ddoitsujin maintainer 2018-01-27 github

Will take a look as soon as an apitrace is up. Although since the game seems to require deferred contexts to work properly, this will take a while to fix.

Yyoshimo 2018-02-01 github

I tried to trace this game but so far i only produce trace files that are barely a kilobyte in size.
Either the hook isn't working or no dx11 is used.

GGloriousEggroll 2018-02-16 github

Just a heads up warframe crashes on launching due to this error as well:
D3D11DeferredContext::Map: Not implemented

Ppingubot 2018-03-04 github

At all people who want to test Diablo 3 with dxvk:

Beginning with Diablo 3 version 2.6.1.49286 the game is broken and will crash in wine-dev. This is a wine-dev issue and not a dxvk issue. See wine bugs:

44585
44616
44617

If you want to test diablo3 with dxvk, you need to do it with wine-staging (2.21 or the new one).

Ppingubot 2018-03-10 github

part of the problem here is #93

Ddoitsujin maintainer 2018-03-19 github

Please re-test, since mapping on deferred contexts has been (partially) implemented.

Ppingubot 2018-03-19 github

@doitsujin : sadly does not work with the build from today morning which includes that part. The game start, gets a little bit further but then it crashes before displaying anything useful, and the blizzard error reporter comes up. Complains about an access violation. Works with wined3d in 2.21 staging so that you can get to the menu, but its utterly slow(defered contexts are basically not really working in wine, staging has a few stubs).

Here are the 2 dxvk logfiles and one d3 wiht dxvk debug layers enabled:

D3Debug.txt
Diablo III64_d3d11.log
Diablo III64_dxgi.log

Will try to get an apitrace, but not sure how/if that works with battle-net launching the game :(

Ppingubot 2018-03-19 github

@doitsujin : can't get the apitrace working :(, damn game..

Any ideas how to further troubleshoot the issue ?

Ddoitsujin maintainer 2018-03-19 github

Would be helpful if you could post the wine backtrace.

Wwhompy 2018-03-19 github

@pingubot you can bypass the loader by adding the -launch command line option.

Ppingubot 2018-03-19 github

@whompy : Many thanks for that hint
@doitsujin : A few infos 4 you:

  • Getting a backtrace did not work cause the wine crash dialog is not shown and the game is showing the blizzar error dialog.
  • Apitracing the game does not work, even launching it directly, apitrace spits exceptions

I then upgraded from wine-satging 2.21 to wine-staging 3.4, which leads to the following situation.

  1. Wine-dev 3.4, does not work at all with D3 atm, due to Bug 44585
  2. Wine-staging 2.21 without dxvk works, but is super slow (DX11)
  3. Wine-staging 2.21 with dxvk causes the mentioned game crash
  4. Wine-staging 3.4 without dxvk works, but is super slow (DX11)
  5. Wine-staging 3.4 with dxvk WORKS

Not sure what makes the difference between staging 2.21 and 3.4 for dxvk here.

My characters doesn't render completely correct (maybe caused by:warn: DxbcCompiler: Unhandled VS SV output: DxbcSystemValue::ClipDistance ?) and antialiasing is not working (err: D3D11RasterizerState: Antialiased lines not supported) but overall the game looks fine. The performance isn't what i expected, but it is not bad also.

In town standing still i have:

PBA

Staging 2.21+Staging 3.3 (DX9 Renderer): ~60 fps
Staging 3.3 + PBA (DX9 Renderer): ~100 fps`
Staging 3.4+ DXVK (DX11 Renderer): ~70 fps (GPU load ~ 45%)

In fights it dips down to 40 fps but it is playable.

Again, great job to get it working ! Perfomance wise there is lot of room for improvement for that title. The good thing is that the cpu load is much lower with dxvk than with wine-staging and wined3d.

Many thanks for all your efforts !

Ddoitsujin maintainer 2018-03-19 github

Not sure what makes the difference between staging 2.21 and 3.4 for dxvk here.

Ah right, DXVK started using some Vulkan features that are not implemented in the old wine-staging Vulkan DLL. 2.21 is no longer supported, but glad to hear that 3.4-staging works.

I can't do anything about graphical issues and performance issues without an apitrace though, but I'll close this for now since the original issue has been fixed.

Ppingubot 2018-03-19 github

@doitsujin: thank you very much for that info that 2.21 does not work anymore ! As Diablo 3 refuses to get an apitrace running, are you interested in playing/testing diablo 3 ?

Ppingubot 2018-03-19 github

@doitsujin : i would donate you the game if you are interested :) ?

Ppingubot 2018-03-20 github

@doitsujin : give me a ping if you want to get the game. If it helps to find bottlenecks (e.g your finding in witcher 3 was huge and was a big benefit also for my games ;) ) i am glad to help with a donation.

LLeJimster 2018-05-24 github

@pingubot the remaining graphical issue has been fixed in this branch https://github.com/doitsujin/dxvk/tree/image-view-fixes - Performance wise it seems smoother than gallium-nine dx9 to me. Hopefully it will be rolled into a main release soon.

Upstream links