https://bugs.winehq.org/show_bug.cgi?id=51713
Bug ID: 51713 Summary: Deus Ex Mankind Divided needs "D3DCompile2 HLSL shader compilation" Product: vkd3d Version: 1.2 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: vkd3d Assignee: wine-bugs@winehq.org Reporter: berillions@gmail.com Distribution: ---
Created attachment 70588 --> https://bugs.winehq.org/attachment.cgi?id=70588 WINEDEBUG=+vkd3d VKD3D_DEBUG="trace" output log
Hello,
I tried to launch with vkd3d + vulkan renderer and it crashes at launch with these error lines : babaowhisky@debian-desktop:~/GOG Games/Deus Ex Mankind Divided/retail$ wine DXMD.exe 0108:err:winediag:wined3d_dll_init Using the Vulkan renderer. 0108:fixme:heap:RtlSetHeapInformation 0000000002810000 0 000000000011F720 4 stub 0108:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION 0110:fixme:ver:GetCurrentPackageId (000000002349FE10 0000000000000000): stub 0120:err:winediag:ntlm_check_version ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution. 0120:err:ntlm:ntlm_LsaApInitializePackage no NTLM support, expect problems 0120:err:winediag:ntlm_check_version ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution. 0120:err:ntlm:ntlm_LsaApInitializePackage no NTLM support, expect problems 0108:fixme:d3d:get_vulkan_physical_device Multiple physical devices available. 0108:fixme:d3d:adapter_vk_init_driver_info Failed to retrieve GPU description for device "AMD RADV POLARIS11" 1002:67ff. 0108:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0x237a36d0, format DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, flags 0, mode_count 0x11dcb0, modes (nil) partial stub! 0108:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0x237a36d0, format DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, flags 0, mode_count 0x11dcb0, modes 0x7f49adc0cc90 partial stub! 0108:fixme:system:SystemParametersInfoW Unimplemented action: 59 (SPI_SETSTICKYKEYS) 0108:fixme:d3d:get_vulkan_physical_device Multiple physical devices available. 0108:fixme:d3d:adapter_vk_init_driver_info Failed to retrieve GPU description for device "AMD RADV POLARIS11" 1002:67ff. 01b0:fixme:d3dcompiler:D3DCompile2 HLSL shader compilation is not yet implemented. 01b0:fixme:d3dcompiler:D3DCompile2 HLSL shader compilation is not yet implemented. 01b0:fixme:d3dcompiler:D3DCompile2 HLSL shader compilation is not yet implemented. 01b0:fixme:d3dcompiler:D3DCompile2 HLSL shader compilation is not yet implemented. 01b0:fixme:d3dcompiler:D3DCompile2 HLSL shader compilation is not yet implemented.
System : - Debian Sid 64bits - AMD RX560 4Gb - Mesa 21.2.1 - Plain wine-6.16 - vkd3d-1.2-460-gb5251b3
https://bugs.winehq.org/show_bug.cgi?id=51713
Berillions berillions@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |INVALID Status|UNCONFIRMED |RESOLVED
--- Comment #1 from Berillions berillions@gmail.com --- Same problem with wined3d OpenGL renderer and DXVK. The game needs d3dcompiler_47 to work.
https://bugs.winehq.org/show_bug.cgi?id=51713
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Product|vkd3d |Wine Version|1.2 |6.16 Status|RESOLVED |REOPENED Ever confirmed|0 |1 Component|vkd3d |directx-d3d-util CC| |z.figura12@gmail.com Resolution|INVALID |---
--- Comment #2 from Zebediah Figura z.figura12@gmail.com --- (In reply to Berillions from comment #1)
Same problem with wined3d OpenGL renderer and DXVK. The game needs d3dcompiler_47 to work.
Well, that doesn't make it invalid; it just makes it another bug that requires the HLSL compiler.
https://bugs.winehq.org/show_bug.cgi?id=51713
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Deus Ex Mankind Divided |Deus Ex Mankind Divided |needs "D3DCompile2 HLSL |needs working HLSL compiler |shader compilation" |
https://bugs.winehq.org/show_bug.cgi?id=51713
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jeremielapuree@yahoo.fr
--- Comment #3 from Austin English austinenglish@gmail.com --- *** Bug 52355 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=51713
Peter kepeter@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |kepeter@gmail.com
--- Comment #4 from Peter kepeter@gmail.com --- I have the same problem with UPLay (and all the games on it) since upgrading to Fedora 35 and Wine 6.21 (Staging)... since then updated Wine to wine-7.0-rc6 (Staging), with no change...
The details are here: https://forum.winehq.org/viewtopic.php?f=8&t=35998
It seems that the problem is with UPlay only as Battle.net (also running on Wine) still working after the update...
https://bugs.winehq.org/show_bug.cgi?id=51713
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |spzakulec@gmail.com
--- Comment #5 from Fabian Maurer dark.shadow4@web.de --- *** Bug 52503 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=51713
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de Summary|Deus Ex Mankind Divided |Multiple applications need |needs working HLSL compiler |working HLSL compiler (Deus | |Ex Mankind Divided, | |Motor4MX, CCextractor 0.94 | |GUI, ...)
--- Comment #6 from Fabian Maurer dark.shadow4@web.de --- Refining Summary.
https://bugs.winehq.org/show_bug.cgi?id=51713
Shmerl shtetldik@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |shtetldik@gmail.com
--- Comment #7 from Shmerl shtetldik@gmail.com --- Same issue affects Cyberpunk 2077 when trying to load Cyber Engine Tweaks mod (it relies on a library that compiles some HLSL with D3DCompile).
See: https://github.com/yamashi/CyberEngineTweaks/issues/660
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #8 from Shmerl shtetldik@gmail.com --- Is there some way to use existing open source compilers for HLSL to plug into this?
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #9 from Nikolay Sivov bunglehead@gmail.com --- Not sure which opensource compilers you mean. For Wine, ongoing effort for this problem is happening at [1], which later will be used in d3dcompiler modules, and some other places.
[1] https://source.winehq.org/git/vkd3d.git/
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #10 from Shmerl shtetldik@gmail.com --- (In reply to Nikolay Sivov from comment #9)
Not sure which opensource compilers you mean.
Well, there are a few as far as I know that can handle HLSL. Not sure how much of any them are useful for this case, but at the very least they include parsing of HLSL itself as one of their steps:
* glslang: https://github.com/KhronosGroup/glslang * DirectXShaderCompiler: https://github.com/Microsoft/DirectXShaderCompiler
https://bugs.winehq.org/show_bug.cgi?id=51713
Ker noa blue-t@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |blue-t@web.de
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #11 from Shmerl shtetldik@gmail.com --- I can confirm that with Wine 7.5 at least Cyberpunk 2077 with Cyberengine tweaks now works without d3dcompiler_47 native override!
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #12 from Shmerl shtetldik@gmail.com --- Clarification, the game starts and isn't crashing anymore, but the UI of the plugin itsefl isn't working with built in HLSL compiler. You still need the native override of d3dcompiler_47 for it to work.
So I assume compiler support is incomplete.
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #13 from Shmerl shtetldik@gmail.com --- I guess this can be a good use case to see what's not working. Let me know if there are some debug flags to enable to see more output of what exactly isn't succeeding in the compiler, I can post it here then.
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #14 from Zebediah Figura z.figura12@gmail.com --- (In reply to Shmerl from comment #13)
I guess this can be a good use case to see what's not working. Let me know if there are some debug flags to enable to see more output of what exactly isn't succeeding in the compiler, I can post it here then.
Sure: WINEDEBUG=+d3dcompiler, VKD3D_DEBUG=trace, VKD3D_SHADER_DEBUG=trace. There are a lot of known missing pieces with the compiler, fwiw.
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #15 from Shmerl shtetldik@gmail.com --- Hm, strange. I see such error when I don't have native override:
0024:err:module:import_dll Library D3DCOMPILER_47.dll (which is needed by L"C:\cyberpunk_2077\bin\x64\plugins\cyber_engine_tweaks.asi") not found
I removed the override in winecfg and also copied d3dcompiler_47.dll from /opt/wine-devel/lib64/wine/x86_64-windows into $WINEPREFIX/drive_c/windows/system32
and one from /opt/wine-devel/lib/wine/x86_64-windows into $WINEPREFIX/drive_c/windows/syswow64
Am I doing it wrong or I'm missing something?
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #16 from Shmerl shtetldik@gmail.com --- Oh, sorry my mistake. I actually didn't remove the override. No such error without it, but the UI of the plugin doesn't work. I'll attach the log.
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #17 from Shmerl shtetldik@gmail.com --- Created attachment 72103 --> https://bugs.winehq.org/attachment.cgi?id=72103 WINEDEBUG=+d3dcompiler, VKD3D_DEBUG=trace, VKD3D_SHADER_DEBUG=trace log output
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #18 from Shmerl shtetldik@gmail.com --- Created attachment 72104 --> https://bugs.winehq.org/attachment.cgi?id=72104 WINEDEBUG=+d3dcompiler VKD3D_DEBUG=trace VKD3D_SHADER_DEBUG=trace log output
I think having commas there wasn't correct somehow. Trying without it gives more info.
https://bugs.winehq.org/show_bug.cgi?id=51713
flampool@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |flampool@protonmail.com
https://bugs.winehq.org/show_bug.cgi?id=51713
Neko-san nekoNexus@protonmail.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |nekoNexus@protonmail.ch
https://bugs.winehq.org/show_bug.cgi?id=51713
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|6.16 |1.9 Product|Wine |vkd3d Component|d3d-util |hlsl
https://bugs.winehq.org/show_bug.cgi?id=51713
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Multiple applications need |Multiple applications need |working HLSL compiler (Deus |working HLSL compiler (Deus |Ex Mankind Divided, |Ex Mankind Divided, |Motor4MX, CCextractor 0.94 |MotorM4X, CCextractor 0.94 |GUI, ...) |GUI, ...)
https://bugs.winehq.org/show_bug.cgi?id=51713
--- Comment #19 from Shmerl shtetldik@gmail.com --- I just tested Cyberpunk 2077 with CyberEngine Tweaks using built in d3dcompiler_47.dll and it works fine! So there is clearly some progress to it and at least this case doesn't need the native override anymore.
https://bugs.winehq.org/show_bug.cgi?id=51713
j-r@online.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |j-r@online.de
--- Comment #20 from j-r@online.de --- Can't reproduce for Deus Ex Mankind Divided in wine-9.22. AFAICT there are no visual or performance difference between running with native or builtin d3d_compiler when using the default "high" settings preset in the internal benchmarking scene.
Should this issue be closed in favor of more specific ones for remaining problems?