protonscr

Borderlands 3 issues

vkd3dclosed
HansKristian-Work/vkd3d-proton#408 · opened 2020-11-18 by holzi91 · updated 2021-02-04 · 6 comments · github
Hholzi91 2020-11-18 github

Borderlands 3 works on the first launch but after that crashes on every launch in DX12 mode with

LowLevelFatalError [File:Unknown] [Line: 242] 
D3DCommandQueue->GetClockCalibration(&GPUTimestamp, &CPUTimestamp) failed 
 at t:\OAK-PATCHWIN64-WIN64\main\Engine\Source\Runtime\D3D12RHI\Private\D3D12DirectCommandListManager.cpp:320 
 with error E_FAIL


0x000000007b0113ae EntryPoint() []
0x00000001568b9f0c EntryPoint() []
0x000000015687a58d EntryPoint() []
0x000000015714bf05 EntryPoint() []
0x0000000157081dd2 EntryPoint() []
0x00000001570d59e6 EntryPoint() []
0x0000000157155a2a EntryPoint() []
0x00000001578ec4bc EntryPoint() []
0x000000014f8cbd35 EntryPoint() []
0x000000014f8c599c EntryPoint() []

Deleting GameUserSettings.ini makes the game launch again but it has to be deleted after that again. Also even when running in DX12 mode the game would crash with some DX12 errors on random things like opening the inventory.
DX11 mode works though.
I'm using a RX 5700XT on Arch. Switching between radv, amdvlk and amdgpu pro didn't help.

Ddoitsujin maintainer 2020-11-18 github

GetClockCalibration was fixed four months ago, please make sure you're using an up to date build of both wine and vkd3d-proton (and please post some sort of log file next time that includes wine console output).

Hholzi91 2020-11-18 github

Is PROTON_LOG=1 a good source for logs?

steam-397540.log

This is the log for Proton-5.21-GE-1 though I'm having the same issue with Proton-5.13-2. They both should come with a pretty recent version of vkd3d though I could try to build one from master.

In the log I could find the following:

fixme:d3d12_command_queue_GetClockCalibration: QPC domain not supported by device, timestamp calibration may be inaccurate.
256:err:d3d12_command_queue_GetClockCalibration: Querying calibrated timestamps failed, vr -13.
256:fixme:hresult_from_vk_result: Unhandled VkResult -13.
293.624:00fc:0100:warn:seh:OutputDebugStringA "LowLevelFatalError [File:Unknown] [Line: 242] \nD3DCommandQueue->GetClockCalibration(&GPUTimestamp, &CPUTimestamp) failed \n at t:\\OAK-PATCHWIN64-WIN64\\main\\Engine\\Source\\Runtime\\D3D12RHI\\Private\\D3D12DirectCommandListManager.cpp:320 \n with error E_FAIL\n"
Hholzi91 2020-11-25 github

Also tried Proton-tkg 5.22 but same issue there.

Hholzi91 2020-12-14 github

Still broken with Proton 5.13-4 and VKD3D 2.1

Hholzi91 2021-01-27 github

Tried proton-6.0-ge-1 but the issue still persists. Also there are multiple entries on Protondb with the same issue now.

Hholzi91 2021-02-04 github

I think I found the solution. I got suspicious about getting the message "Device does not support VK_VALVE_mutable_descriptor_type" despite using mesa-git. After making sure radv was used and removing amdvlk it suddenly worked. Seems like amdvlk made itself the default for whatever reason.
Only tried dx12 for a short moment so far but performance it pretty amazing.

Proton versions

Launch options