protonscr

Star Wars: Battlefront II DX12 Crashing

vkd3dclosed appid 2017good first issue
HansKristian-Work/vkd3d-proton#1602 · opened 2023-06-25 by thebobbyboy420 · updated 2023-06-29 · 6 comments · github · game page · search this game
Tthebobbyboy420 2023-06-25 github

Game loads and crashes while building the shaders

Software information

Star Wars: Battlefront II (2017)
DirectX-12

System information

  • GPU: NVIDIA GeForce RTX 4070
  • Driver: 535.54.03
  • Wine version: tested many all the same results
  • VKD3D-Proton version: 2.9

Log info

58858.704:0158:01f0:err:vkd3d-proton:vkd3d_dxil_log_callback: dxil-spirv: For dual source blending, only RT 0 and 1 can be used.
58858.704:0158:01f0:err:vkd3d-proton:vkd3d_dxil_log_callback: dxil-spirv: Failed to convert function.

Nnull77 2023-06-27 github

I'm looking at this now:

  • I had to use Proton 7 to get the EA launcher working. @elogicuk , which versions of Proton did you test with, and can you use 8 and/or Experimental?
  • I was able to repro the dual-source blending issue. It seems like at least one shader is using undefined behaviour:
Writing to other pixel shader outputs (o2, o3 etc.) is undefined; you may not write to a render target if it is not bound to slot 0. Writing oDepth is valid during dual source color blending.

https://learn.microsoft.com/en-us/windows/win32/direct3d11/d3d10-graphics-programming-guide-output-merger-stage#dual-source-color-blending

If we can confirm with the D3D12 runtime that this UB is allowed in the PSO, we can work around it by masking out the extra RT writes.

Tthebobbyboy420 2023-06-28 github

I'm looking at this now:

  • I had to use Proton 7 to get the EA launcher working. @elogicuk , which versions of Proton did you test with, and can you use 8 and/or Experimental?
  • I was able to repro the dual-source blending issue. It seems like at least one shader is using undefined behaviour:

i tested with 7.2 all the way up to 8.8 same results each time.

BBlisto91 2023-06-28 github

With null77's fix having been merged in vkd3d-proton and just landed in Proton Bleeding this works for me now :+1:

Tthebobbyboy420 2023-06-28 github

With null77's fix having been merged in vkd3d-proton and just landed in Proton Bleeding this works for me now +1

im using linux and lutris, how do i download these?

BBlisto91 2023-06-29 github

You can download the latest master build, as of now, here https://github.com/HansKristian-Work/vkd3d-proton/actions/runs/5404023377

Tthebobbyboy420 2023-06-29 github

You can download the latest master build, as of now, here https://github.com/HansKristian-Work/vkd3d-proton/actions/runs/5404023377

i just tested it works great thanks to everyone you guys rock!

Nothing extracted yet.