godot_openxr
godot_openxr copied to clipboard
[BUG] ARVRController is never bound to controllers
As the title states the ARVRController nodes are never bound and no trackers are registered as controllers. This same setup works with OpenVR but not OpenXR. The hands work fine in the same scene but the controllers never bind in any way. Side note: SteamVR is stuck on "Next Up" (This is a SteamVR issue with the latest version (using an older version via SteamCMD is a workaround)) SteamVR is latest version ( both release and beta have the same issue )
System Info
Godot Version: 3.4.3 Stable OpenXR Plugin Version: 1.1.0 or 1.2.0 (Same issue) SteamVR Version: build 8296214 OS: Manjaro Linux ( Qonos 21.2.4 ) Kernel: Linux (5.16.12-246-tkg-pds) CPU: AMD Ryzen 7 3800X 8-Core Processor × 8 GPU: AMD Radeon RX 6700 XT RAM: 64 GB
If SteamVR is stuck on "Next Up" it is probably not getting to the point where controllers are being bound (this does not happen until the session turns to focused as far as my testing on Windows shows).
@ChristophHaag do you have any insight in this?
I checked the web console and among the known SteamVR issues of spam this is also logged constantly when I run my project

That sounds like an internal issue in SteamVR seeing Godot 3 doesn't use Vulkan... I wonder what could be causing that..
What was the last SteamVR version to not have this issue? I've got the exact same problem on Windows and want to report it as a bug on steam(I've checked the latest beta and it's still a problem). It's probably going to be overlooked but I figure better than doing nothing.
Okay. Two things. First off you NEED to make sure the viewport is set to use ARVR this could be part of it. (I suggest making the plugin print an error for this) Second, I've noticed that SteamVR won't give any controller inputs if you aren't wearing the headset (I use an index if that matters) the tracking for hands (not controllers) work but not buttons. (I suggest documenting this as well) However these issues aren't explained anywhere that I've found.
Okay. Two things. First off you NEED to make sure the viewport is set to use ARVR this could be part of it. (I suggest making the plugin print an error for this) Second, I've noticed that SteamVR won't give any controller inputs if you aren't wearing the headset (I use an index if that matters) the tracking for hands (not controllers) work but not buttons. (I suggest documenting this as well) However these issues aren't explained anywhere that I've found.
Could you be more specific with the viewport node? I tried throwing in a viewport node to the scene and as a child of the camera with ARVR checked both times and nothing changed.
Okay. Two things. First off you NEED to make sure the viewport is set to use ARVR this could be part of it. (I suggest making the plugin print an error for this) Second, I've noticed that SteamVR won't give any controller inputs if you aren't wearing the headset (I use an index if that matters) the tracking for hands (not controllers) work but not buttons. (I suggest documenting this as well) However these issues aren't explained anywhere that I've found.
Could you be more specific with the viewport node? I tried throwing in a viewport node to the scene and as a child of the camera with ARVR checked both times and nothing changed.
The viewport is the get_tree().root one
Ok, my script already has that and I've still got the hand tracking issue.
Just tested with the latest OpenXR plugin release (1.3) and the issue seems to be gone. I'm getting some other errors now but I think that's related to XR Tools and I need to update some stuff.