protonscr

Devil May Cry Special Edition DirectX10 error

dxvkclosed
doitsujin/dxvk#579 · opened 2018-08-19 by romulasry · updated 2019-01-12 · 26 comments · github
1 matching comments, n / p to jump
Rromulasry 2018-08-19 github

Software information

Devil May Cry Special Edition DX10 app

System information

  • GPU: AMD RX 480
  • Driver: Mesa 18.1.5
  • Wine version: 3.14
  • DXVK version: 0.70

Log files

wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
[0818/181517.859:INFO:crash_reporting.cc(215)] Crash reporting enabled for process: browser
[0818/181517.961:ERROR:network_change_notifier_win.cc(157)] WSALookupServiceBegin failed with: 8
[0818/181518.347:INFO:crash_reporting.cc(215)] Crash reporting enabled for process: gpu-process
[0818/181522.694:INFO:crash_reporting.cc(215)] Crash reporting enabled for process: renderer
[0818/181523.695:ERROR:gpu_process_transport_factory.cc(1029)] Lost UI shared context.
[0818/181524.062:INFO:crash_reporting.cc(215)] Crash reporting enabled for process: renderer
[0818/181524.485:ERROR:command_buffer_proxy_impl.cc(133)] ContextResult::kTransientFailure: Failed to send GpuChannelMsg_CreateCommandBuffer.
[0818/181525.458:WARNING:cert_verify_proc_win.cc(101)] Unknown error -2146762482 mapped to net::ERR_FAILED
info:  Game: DevilMayCry4SpecialEdition.exe
info:  DXVK: v0.70
warn:  OpenVR: Failed to locate module
info:  Enabled instance extensions:
info:    VK_KHR_get_physical_device_properties2
info:    VK_KHR_surface
info:    VK_KHR_win32_surface
info:  AMD RADV POLARIS10 (LLVM 6.0.1):
info:    Driver: 18.1.5
info:    Vulkan: 1.1.70
info:    Memory Heap[0]: 
info:      Size: 7936 MiB
info:      Flags: 0x1
info:      Memory Type[0]: Property Flags = 0x1
info:    Memory Heap[1]: 
info:      Size: 256 MiB
info:      Flags: 0x1
info:      Memory Type[2]: Property Flags = 0x7
info:    Memory Heap[2]: 
info:      Size: 8192 MiB
info:      Flags: 0x0
info:      Memory Type[1]: Property Flags = 0x6
info:      Memory Type[3]: Property Flags = 0xe
warn:  DXGI: VK_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
info:  D3D11CoreCreateDevice: Probing D3D_FEATURE_LEVEL_10_0
info:  D3D11CoreCreateDevice: Using feature level D3D_FEATURE_LEVEL_10_0
info:  Enabled device extensions:
info:    VK_EXT_shader_viewport_index_layer
info:    VK_EXT_vertex_attribute_divisor
info:    VK_KHR_dedicated_allocation
info:    VK_KHR_descriptor_update_template
info:    VK_KHR_get_memory_requirements2
info:    VK_KHR_image_format_list
info:    VK_KHR_maintenance1
info:    VK_KHR_maintenance2
info:    VK_KHR_sampler_mirror_clamp_to_edge
info:    VK_KHR_shader_draw_parameters
info:    VK_KHR_swapchain
warn:  DxgiSwapChain::QueryInterface: Unknown interface query
warn:  94d99bdb-f1f8-4ab0-b236-7da0170edab1
warn:  DXGI: MakeWindowAssociation: Ignoring flags
info:  DxgiVkPresenter: Recreating swap chain: 
  Format:       VK_FORMAT_B8G8R8A8_UNORM
  Present mode: VK_PRESENT_MODE_IMMEDIATE_KHR
  Buffer size:  1280x720
err:   D3D11: Cannot create texture:
  Format:  VK_FORMAT_UNDEFINED
  Extent:  262144x1x1
  Samples: 1
  Layers:  1
  Levels:  2
  Usage:   3
[0818/181530.279:INFO:crash_reporting.cc(215)] Crash reporting enabled for process: renderer
AL lib: (EE) ReleaseThreadCtx: Context 0xf6e28630 current for thread being destroyed, possible leak!
Setting breakpad minidump AppID = 329050
Ddoitsujin maintainer 2018-08-19 github

Please upload an apitrace, I can't do anything without being able to reproduce it.

Rromulasry 2018-08-20 github

Is there an easy way to make an apitrace for DX10? https://github.com/doitsujin/dxvk/wiki/Common-issues#apitrace Isn't working for me.

If not could someone else do the trace please. Thanks.

Ddoitsujin maintainer 2018-08-20 github

Just do it the regular way, i.e. apitrace.exe trace -a dxgi game.exe. If you have game on Steam, put Z:\path\to\apitrace.exe trace -a dxgi %command% into the launch options.

Rromulasry 2018-08-21 github

I did it but it crashes now:

[0820/191013.906:ERROR:network_change_notifier_win.cc(157)] WSALookupServiceBegin failed with: 8
[0820/191014.293:INFO:crash_reporting.cc(215)] Crash reporting enabled for process: gpu-process
[0820/191019.165:INFO:crash_reporting.cc(215)] Crash reporting enabled for process: renderer
[0820/191020.399:ERROR:gpu_process_transport_factory.cc(1029)] Lost UI shared context.
[0820/191020.736:INFO:crash_reporting.cc(215)] Crash reporting enabled for process: renderer
apitrace: loaded into F:\ryan.local\share\lutris\runners\winesteam\prefix\drive_c\Program Files\Steam\steamapps\common\Special Edition\DevilMayCry4SpecialEdition.exe
[0820/191022.444:WARNING:cert_verify_proc_win.cc(101)] Unknown error -2146762482 mapped to net::ERR_FAILED
apitrace: tracing to F:\ryan.local\share\lutris\runners\winesteam\prefix\drive_c\Program Files\Steam\steamapps\common\Special Edition\DevilMayCry4SpecialEdition.2.trace
apitrace: warning: caught exception 0xc0000005
apitrace: flushing trace
wine: Unhandled page fault on read access to 0xd690e030 at address 0x17a45f0 (thread 00d4), starting debugger...

What am I doing wrong?

AAccountOneOff 2018-08-21 github

Try with Lutris master. I haven't tested as I don't have any DX10 games but Lutris doesn't currently work with DXVK's DX10.

I found this to work well with game launchers. I've done it lots of times with Lutris:

Download: https://people.freedesktop.org/~jrfonseca/apitrace/apitrace-msvc-latest.7z

  1. Copy the apitrace lib folder to the game exe's parent folder
  2. Copy all the files/folders from the apitrace bin folder and place them in the folder containing the game exe
  3. Rename apitrace.exe to game.exe and game.exe to game_o.exe
  4. Add trace -a dxgi game_o.exe to steam launch options
Rromulasry 2018-08-21 github

I tried, same issue. Haven't tried lutris master, I will wait for an update.

33kinox 2018-08-23 github

Hello,

I have the same issue, but I managed to get an apitrace.
I do need to precise that I got this using steam play, and that I have the standard edition (but which seem to have the same engine/problems)
DevilMayCry4_DX10.zip

KK0bin maintainer 2018-08-23 github

That trace is 3kb which means something went wrong while recording it. It should be somewhere between 300mb - 5gb

33kinox 2018-08-23 github

Hmm I am no expert on apitrace, but the crash is almost immediate, so I don't know if it is much surprising that the trace be so small. After that, I did try all method I could find, and the one from AccountOneOff is the one which gave me the trace.
But I do get a crash with trace as follows (Error is the same with wine-staging+dxvk):
Unhandled exception: unimplemented function d3d11.dll.D3D11CoreCreateDevice called in 32-bit code (0x7bc541f1).

33kinox 2018-08-24 github

Okay, after investigation the bug happens without dxvk anyway, so I guess trace or not is not important here... Will report to proton/wine instead.

Rromulasry 2018-08-24 github

Did you run winetricks d3dx10_43 -- first?

Ddoitsujin maintainer 2018-08-24 github

Please apply the following patch to DXVK, re-run the game and post the resulting log files. It won't solve any problems, but rather add a more useful error message. It appears that it uses an image format that DXVK currently doesn't support.

dxvk-texture-log.patch.txt

33kinox 2018-08-25 github

Here goes the log, with your patch.
But with every new prefix I create, I can no longer obtain that same error... Only on a steam prefix I reused and with Steam Play/proton...
Instead there I get a good old page fault... (I joined the terminal log too). I also no longer can get an apitrace, I suppose the pf kills apitrace before the dump...
Guess I will try to make a dump with reinstalling patched dxvk on my other prefix tomorrow morning too.
dxvk-log.zip

Ddoitsujin maintainer 2018-08-26 github

The new log is useless because it doesn't contain the old error. Please make sure to get it running again, otherwise we'll never find out what's going on here.

33kinox 2018-08-26 github

Here is the log I get, with patched dxvk and the right error. I don't see any sign of your new exception, but now the wine debugger fail and I can 't get a full backtrace.

DXVK log:

1 info:  Game: DevilMayCry4_DX10.exe
  2 info:  DXVK: v0.70-8-g73cbf5b
  3 warn:  OpenVR: Failed to locate module
  4 info:  Enabled instance extensions:
  5 info:    VK_KHR_get_physical_device_properties2
  6 info:    VK_KHR_surface
  7 info:    VK_KHR_win32_surface
  8 info:  GeForce GTX 1070:
  9 info:    Driver: 396.51.0
 10 info:    Vulkan: 1.1.70
 11 info:    Memory Heap[0]:
 12 info:      Size: 8192 MiB
 13 info:      Flags: 0x1
 14 info:      Memory Type[7]: Property Flags = 0x1
 15 info:      Memory Type[8]: Property Flags = 0x1
 16 info:    Memory Heap[1]:
 17 info:      Size: 12016 MiB
 18 info:      Flags: 0x0
 19 info:      Memory Type[0]: Property Flags = 0x0
 20 info:      Memory Type[1]: Property Flags = 0x0
 21 info:      Memory Type[2]: Property Flags = 0x0
 22 info:      Memory Type[3]: Property Flags = 0x0
 23 info:      Memory Type[4]: Property Flags = 0x0
 24 info:      Memory Type[5]: Property Flags = 0x0
 25 info:      Memory Type[6]: Property Flags = 0x0
 26 info:      Memory Type[9]: Property Flags = 0x6
 27 info:      Memory Type[10]: Property Flags = 0xe
 28 info:  GeForce GTX 1070:
 29 info:    Driver: 396.51.0
 30 info:    Vulkan: 1.1.70
 31 info:    Memory Heap[0]:
 32 info:      Size: 8192 MiB
 33 info:      Flags: 0x1
 34 info:      Memory Type[7]: Property Flags = 0x1
 35 info:      Memory Type[8]: Property Flags = 0x1
 36 info:    Memory Heap[1]:
 37 info:      Size: 12016 MiB
 38 info:      Flags: 0x0
 39 info:      Memory Type[0]: Property Flags = 0x0
 40 info:      Memory Type[1]: Property Flags = 0x0
 41 info:      Memory Type[2]: Property Flags = 0x0
 42 info:      Memory Type[3]: Property Flags = 0x0
 43 info:      Memory Type[4]: Property Flags = 0x0
 44 info:      Memory Type[5]: Property Flags = 0x0
 45 info:      Memory Type[6]: Property Flags = 0x0
 46 info:      Memory Type[9]: Property Flags = 0x6
 47 info:      Memory Type[10]: Property Flags = 0xe
 48 warn:  DxgiFactory::QueryInterface: Unknown interface query
 49 warn:  7632e1f5-ee65-4dca-87fd-84cd75f8838d
 50 warn:  DxgiFactory::QueryInterface: Unknown interface query
 51 warn:  1bc6ea02-ef36-464f-bf0c-21ca39e5168a
 52 warn:  DxgiFactory::QueryInterface: Unknown interface query
 53 warn:  25483823-cd46-4c7d-86ca-47aa95b837bd
 54 warn:  DxgiAdapter::QueryInterface: Unknown interface query
 55 warn:  645967a4-1392-4310-a798-8053ce3e93fd

Relevant wine log:

wine: Call from 0x7bc79441 to unimplemented function D3D11.DLL.D3D11CoreCreateDevice@24, aborting
apitrace: warning: caught exception 0x80000100
apitrace: flushing trace
wine: Unimplemented function D3D11.DLL.D3D11CoreCreateDevice@24 called at address 0x7bc79441 (thread 0086), starting debugger...

If i remove the apitrace.exe trick from AccountOneOff, I get a page fault. With apitrace.exe I get this. On pure wine with clean prefix everything works in any case (apitrace, no apitrace). With dxvk prefix but with "WINEDLLOVERRIDES="d3d11,dxgi=b" wine game.exe" the game still fails in the same way.
And in proton it fails in the same way, but I get the full backtrace.

Ddoitsujin maintainer 2018-08-26 github

wine: Call from 0x7bc79441 to unimplemented function D3D11.DLL.D3D11CoreCreateDevice@24, aborting

This error indicates that you're using an invalid d3d11.dll.

Please run it without apitrace, without any builtin wine DLLs (dxgi, d3d10 and d3d11 have to be set to native), and without any special options that might interfere with the game, just the way you did in your original report so that the new error pops up.

Any logs without the error about the texture not being created are completely useless.

Also, please attach your log files as text files, or create a gist, put them on pastebin or whatever, but please don't paste them directly into your comments. It makes them unreadable.

Rromulasry 2018-09-24 github

Any update?

Rromulasry 2018-09-25 github

Is dxvk-texture-log.patch.txt in the latest dxvk (0.80)? I am waiting on a fix for lutris if so I may send a log.

Rromulasry 2018-09-29 github

It starts now (latest dxvk 0.80) under Proton but crashes when I try to run the frame rate test in the game.

I ran "PROTON_LOG=1 %command%" (with no quotes) under latest Proton beta, here is the log:
steam-329050.log

Ppchome 2018-09-29 github

@romulasry
AFAIK Proton currently not using d3d10 libs from DXVK.

Rromulasry 2018-09-29 github

@romulasry
AFAIK Proton currently not using d3d10 libs from DXVK.

Darn... :(

Rromulasry 2018-10-06 github

Here is a log from the latest dxvk (0.81), with the command

lutris -d devil-may-cry-4-special-editi-steam &> dxvk.log

dxvk.log

VVosester 2018-10-13 github

With the latest master, I have been playing with memory sizes, the best I got is setting this. It runs just past the Capcom logo then dies.

dxgi.maxDeviceMemory = 2048
dxgi.maxSharedMemory = 2048

Anyone tried it in a 32bit prefix?, Wine's WOW64 could be the problem or it's just a 32bit app been flaky.
I tried to get an api trace but it was pain to set up and it failed.
Could we get an api dump within DXVK as a build option, to make make it easier to debug?

JJasCodes 2018-11-13 github

+1

Mmassatt212 2018-12-24 github

the stupid game starts with DX11 and then goes to DX10
well done capcom smh cant even get it working on Windows DXVK just errors when trying to swap over to dx10

Mmassatt212 2019-01-12 github

Devil may cry 4 special edition works
0.95 thx for the update will report if it crashes (i mean just report lol)

Launch options

DLLs

Error codes