GodotVR / godot_openxr

(Maintenance mode) OpenXR drivers for the Godot Game Engine v3.x
MIT License
277 stars 43 forks source link

No video in HMD - "failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]" #13

Closed Nocxr closed 3 years ago

Nocxr commented 3 years ago

Attempting to use latest OpenXR plugin with latest 3.2 Godot branch as of today (Godot Engine v3.2.4.beta.custom_build.61c8efecf) results in HMD tracking working in editor, but no video is being sent to the headset. Basic scene with origin and camera, and minimal initialization code: image

SteamVR NOT running results in the following log:

Running: F:\Godot\Branches\3.2\godot\bin\godot.windows.tools.64.exe --path F:/Godot/Projects/3_2_branch_openxr_test_01 --remote-debug 127.0.0.1:6007 --allow_focus_steal_pid 15424 --position 448,240 res://ARVROrigin.tscn
Godot Engine v3.2.4.beta.custom_build.61c8efecf - https://godotengine.org
OpenGL ES 3.0 Renderer: AMD Radeon RX 5700 XT
OpenGL ES Batching: ON

OpenXR: initialising OpenXR context
OpenXR Runtime only supports OpenGL version 4.3 - 4.6!
Using OpenGL version: 3.3.14736 Core Profile Forward-Compatible Context 20.10.1 27.20.12033.1007
Using OpenGL Renderer: AMD Radeon RX 5700 XT
Swapchain Formats
Using SRGB swapchain!
Suggesting actions for /interaction_profiles/khr/simple_controller, 4 bindings
Suggesting actions for /interaction_profiles/valve/index_controller, 8 bindings
Suggesting actions for /interaction_profiles/mndx/ball_on_a_stick_controller, 8 bindings
initialized controllers 1 2
OpenXR init succeeded
EVENT: session state changed to 1
EVENT: session state changed to 2
EVENT: session state changed to 3
EVENT: session state changed to 4
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
EVENT: session state changed to 5
EVENT: interaction profile changed!
Failed to get interaction profile path str for /user/hand/left [XR_ERROR_RUNTIME_FAILURE]
Failed to get interaction profile path str for /user/hand/right [XR_ERROR_RUNTIME_FAILURE]
EVENT: interaction profile changed!
Failed to get interaction profile path str for /user/hand/left [XR_ERROR_RUNTIME_FAILURE]
Failed to get interaction profile path str for /user/hand/right [XR_ERROR_RUNTIME_FAILURE]
EVENT: interaction profile changed!
Failed to get interaction profile path str for /user/hand/left [XR_ERROR_RUNTIME_FAILURE]
Failed to get interaction profile path str for /user/hand/right [XR_ERROR_RUNTIME_FAILURE]
EVENT: interaction profile changed!
Failed to get interaction profile path str for /user/hand/left [XR_ERROR_RUNTIME_FAILURE]
Failed to get interaction profile path str for /user/hand/right [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
EVENT: interaction profile changed!
Event: Interaction profile changed for /user/hand/left: /interaction_profiles/khr/simple_controller
Event: Interaction profile changed for /user/hand/right: /interaction_profiles/khr/simple_controller
EVENT: interaction profile changed!
Event: Interaction profile changed for /user/hand/left: /interaction_profiles/khr/simple_controller
Event: Interaction profile changed for /user/hand/right: /interaction_profiles/khr/simple_controller
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]

SteamVR RUNNING results in the following log:

Running: F:\Godot\Branches\3.2\godot\bin\godot.windows.tools.64.exe --path F:/Godot/Projects/3_2_branch_openxr_test_01 --remote-debug 127.0.0.1:6007 --allow_focus_steal_pid 15424 --position 448,240 res://ARVROrigin.tscn
Godot Engine v3.2.4.beta.custom_build.61c8efecf - https://godotengine.org
OpenGL ES 3.0 Renderer: AMD Radeon RX 5700 XT
OpenGL ES Batching: ON

OpenXR: initialising OpenXR context
OpenXR Runtime only supports OpenGL version 4.3 - 4.6!
Using OpenGL version: 3.3.14736 Core Profile Forward-Compatible Context 20.10.1 27.20.12033.1007
Using OpenGL Renderer: AMD Radeon RX 5700 XT
Swapchain Formats
Using SRGB swapchain!
Suggesting actions for /interaction_profiles/khr/simple_controller, 4 bindings
Suggesting actions for /interaction_profiles/valve/index_controller, 8 bindings
Suggesting actions for /interaction_profiles/mndx/ball_on_a_stick_controller, 8 bindings
initialized controllers 1 2
OpenXR init succeeded
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
EVENT: session state changed to 1
EVENT: session state changed to 2
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
EVENT: session state changed to 3
EVENT: session state changed to 4
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
failed to begin frame! [XR_ERROR_RUNTIME_FAILURE]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]
Failed to locate view space in play space! [XR_ERROR_TIME_INVALID]

Windows 10 x64 20H2 19042.572 Radeon Driver: 20.10.1 OpenXR Plugin: (last commit 7e5c2a9) Using the provided OpenXR Loader .dll in repo (do I need to compile a new one for x64?) Oculus Quest 1 using Oculus Link Oculus App Version: 21.0.0.473.199 Quest Firmware: 904120.19760.0 SteamVR: 1.14.16

Please let me know if there is any additional information or steps you would like me to perform or provide that could be helpful/useful!

ChristophHaag commented 3 years ago

I haven't tested this on windows myself, but people report that the Oculus and WMR integrations don't work on SteamVR + OpenXR yet (probably those that extract the rendered image from SteamVR and forward it to their own runtime).

https://steamcommunity.com/app/250820/discussions/8/2647504242046572684/ https://steamcommunity.com/app/250820/discussions/8/2647504242044701031/

I'm sure once they will see to get this working in the future but for the time being it may only work with Oculus Home directly.

ChristophHaag commented 3 years ago

SteamVR update https://store.steampowered.com/newshub/app/250820/view/2923360954130050519

Fixed application not displaying in headset for third party devices (e.g. Oculus, Windows Mixed Reality).

Nocxr commented 3 years ago

Can confirm using SteamVR 1.15.10, Godot 3.2.4-beta2, and the current master branch of this plugin (a519101) is working as expected when running the SteamVR runtime set as the target OpenXR runtime.

Running: F:/Godot/3.2.4-beta2/Godot_v3.2.4-beta2_win64.exe --path F:/Godot/projects/sandbox_openxr --remote-debug 127.0.0.1:6007 --allow_focus_steal_pid 12612 --position 1408,780
Godot Engine v3.2.4.beta2.official - https://godotengine.org
OpenGL ES 3.0 Renderer: AMD Radeon RX 5700 XT
OpenGL ES Batching: ON

OpenXR: initialising OpenXR context
OpenXR Runtime only supports OpenGL version 4.3 - 4.6!
Using OpenGL version: 3.3.14736 Core Profile Forward-Compatible Context 20.10.1 27.20.12033.1007
Using OpenGL Renderer: AMD Radeon RX 5700 XT
Swapchain Formats
Using SRGB swapchain!
Suggesting actions for /interaction_profiles/khr/simple_controller, 4 bindings
Suggesting actions for /interaction_profiles/valve/index_controller, 8 bindings
Suggesting actions for /interaction_profiles/mndx/ball_on_a_stick_controller, 8 bindings
initialized controllers 1 2
OpenXR init succeeded
OpenXR target runtime: D:\Steam\steamapps\common\SteamVR\steamxr_win64.json
EVENT: session state changed to 1
EVENT: session state changed to 2
EVENT: session state changed to 3
EVENT: session state changed to 4
EVENT: session state changed to 5
EVENT: interaction profile changed!
No interaction profile for /user/hand/left
No interaction profile for /user/hand/right
EVENT: interaction profile changed!
No interaction profile for /user/hand/left
No interaction profile for /user/hand/right
EVENT: interaction profile changed!
No interaction profile for /user/hand/left
No interaction profile for /user/hand/right
EVENT: interaction profile changed!
No interaction profile for /user/hand/left
No interaction profile for /user/hand/right
EVENT: interaction profile changed!
No interaction profile for /user/hand/left
Event: Interaction profile changed for /user/hand/right: /interaction_profiles/khr/simple_controller
EVENT: session state changed to 4
EVENT: session state changed to 5
Nocxr commented 3 years ago

Tested again using latest SteamVR Version: 1.15.19, Godot Version: Godot_v3.2.4-beta6_win64, and plugin, this is no longer an issue, closing the ticket.