OpenXR-SDK-Source
OpenXR-SDK-Source copied to clipboard
Debugging crash in xrBeginFrame with SteamVR backend
Sometimes when my application calls xrBeginFrame
, OpenXR crashes on xr_generated_loader.cpp:434 with message:
Exception thrown at 0x00007FFFB0A5665A (d3d12SDKLayers.dll) in RavEngineVR.exe: 0xC0000005:
Access violation reading location 0x0000000000000000.
Occasionally it also logs Unable to create draw lists
in the console but not every time.
How should I debug this? I can't see very much through the dispatchtable or call stack:
So I think this is probably a SteamVR issue, or maybe a Windows or driver one. (Also it's strange to see the 11on12 layer in there, it almost certainly will not handle SteamVR d3d calls right) The loader is just the top thing in that call stack that you have source for. I'd suggest reaching out to any SteamVR dev rel contacts you might have. I'll ping some folks for you too.
Does this happen with hello-xr when running using d3d11 and otherwise similar setup?
My application is using Direct3D12, SteamVR version is 1.22.13
With the same computer and headset, I get a crash in hello_xr on D3D12 (same crash as #313, not in xrBeginFrame
). hello-xr on D3D11 and OpenGL works correctly, the rest of the APIs are reported as unsupported.
Check the dxcpl and other dev settings, I'm guessing that the d3d11on12 layer is to blame here. Also you may wish to clean install SteamVR (and maybe update your GPU drivers and maybe manual install the Vulkan runtime?) because I was just testing it yesterday on Windows, and it reported all graphics apis as supported.
An issue (number 1806) has been filed to correspond to this issue in the internal Khronos GitLab (Khronos members only: KHR:openxr/openxr#1806 ), to facilitate working group processes.
This GitHub issue will continue to be the main site of discussion.
is this related to #313 I wonder? I have been doing a lot of steamvr d3d12 testing with the CTS, this may have been fixed.