protonscr

Any UE5 apps shipped as D3D12/SM6 fail to start on Windows

vkd3dclosed
HansKristian-Work/vkd3d-proton#1866 · opened 2024-02-01 by Kein · updated 2024-02-07 · 6 comments · github
KKein 2024-02-01 github

UE5 engine fails with generic RHI message
DirectX 12 is not supported on your system. Try running without the -dx12 or -d3d12 command line argument.
See: https://github.com/EpicGames/UnrealEngine/blob/072300df18a94f18077ca20a14224b5d99fee872/Engine/Source/Runtime/RHI/Private/Windows/WindowsDynamicRHI.cpp#L869

Software information

Any UE5 game that ships in configuration D3D12 RHI/SM6: Talos Principle 2, Only Up, The Isle,. etc

System information

  • GPU: GTX 1070
  • Driver: 545.xx
  • Wine version: ---
  • Windows version: 10 21h2
  • VKD3D-Proton version: 2.11.1
  • Vulak API version: 1.3.260

Log files

dxvk.log

HHansKristian-Work maintainer 2024-02-01 github

It's possible they require SM 6.6 now, which Pascal does not support due to lack of compute shader derivatives. If this is a hard requirement for UE5 now I suppose I'll have to implement a workaround.

KKein 2024-02-01 github

It's possible they require SM 6.6 now, which Pascal does not support due to lack of compute shader derivatives.

Sorry, in what way this is related to SM 6.6 specifically? GTX 1070 supports up to 6.7 "virtual SM" (6.5 HW). It can run any UE5.x version in any native RHI (render interface) - D3D12, Vulkan, both build with latest available SM models (SM6.x).
I dont think this is a GPU issue?

HHansKristian-Work maintainer 2024-02-01 github

The hardware itself doesn't really support compute shader derivatives. I assume they work around that in D3D12 driver, but NV does not expose compute_shader_derivatives in Vulkan, so I'll have to emulate it instead.

KKein 2024-02-01 github

Oh I see, that makes sense.

BBlisto91 2024-02-01 github

To check if it's that you can try and see if any of them start by setting up environment variable VKD3D_SHADER_MODEL with the value 6_6
They might not still start though as it is just faking it

KKein 2024-02-01 github

It starts but I'm getting crash at:
https://github.com/EpicGames/UnrealEngine/blob/463443057fb97f1af0d2951705324ce8818d2a55/Engine/Source/Runtime/D3D12RHI/Private/Windows/WindowsD3D12Viewport.cpp#L222

error code 80004001 but I dont see it in the list of valid D3D12/DXGI codes.

dxvk.log

Launch options