Forum Discussion
VrDevMV
1 year agoProtege
Simultaneous hands and controllers doesn't work anymore
Hi,
around march/april 2024 we were able to implement the support of both Hands & Controllers simultaneously, using the Meta OpenXR API. Our app is written in C++ and runs in PCVR (Quest Meta Link PC). We are using a Meta Quest Pro headset (3, actually, one for us, two for the client). Back then Meta VR software was either v62 or v63.
I recorded this video as a proof that it did work : https://www.youtube.com/watch?v=NHGjfHEtBgs
The use case is that we need the user to manipulate a real luggage and see it in the VR. It worked indeed for a couple of months, at our client's facility, with more than half a hundred different users.
Our code relies on xrResumeSimultaneousHandsAndControllersTrackingMETA / SXRE_META_DetachedControllers / ... based on the OpenXR API provided by Meta (I can profide more code if needed).
Our problem :
The project is now reactivated and I updated both the PC and the headset to v69.
And it turns out, the simultaneous support of both hands and controllers doesn't work anymore.
My questions :
- has anything changed recently in the way we should except this to work ?
- is there a way to test this feature, outside our of own application, to make sure the headset behaves as expected ?
I've seen quite a lot of similar posts either on this very forum or on Reddit, and the lack of information makes me rather concerned. Is there any plan at Meta to allow such use cases where a real life object can be tracked in realtime ? Or is it something you simply don't care about (the compositing provided a standalone tracker, so I would expect Meta to at least consider the question) ?
Please be honest if this feature was disabled and there is no immediate plan to reinstate it, so we can move on to another solution (possibly another headset vendor).
5 Replies
- VrDevMVProtege
Replying to myself, found this : https://github.com/meta-quest/Meta-OpenXR-SDK/blob/main/Samples/XrSamples/XrHandsAndControllers/Src/main.cpp
Now we need to build it (on the Win32 target) and see if/how it works...
If someone has a status about the Simultaneous hands and controllers feature in PCVR, I'm all ears.- VrDevMVProtege
Update :
we built the Cpp sample provided by Meta (see post above) and .... it works, both on a Quest 3 and on a Quest Pro.
So, there something that used to work in our code and that doesn't work anymore and we need to look into your Cpp sample to figure out what's wrong...Here's your sample, running in PCVR (v69) : https://www.youtube.com/watch?v=40a-2ovvXjw
PS. I know it's a lot of work but it would definitely help people if you provided the samples in binary form.
- VrDevMVProtege
Tonight update : the sample provided by Meta (here : https://github.com/meta-quest/Meta-OpenXR-SDK/blob/main/Samples/XrSamples/XrHandsAndControllers/Src/main.cpp) shows that this features in not really stable.
I re-ran the sample 4 times in a row but could NEVER get the simultaneous support of both hands & controllers.
Then, I decided to reboot both the PC and the Quest Pro. Then the sample worked again !
I'm sorry but, since my company decided to work with Meta headsets, I hear "have you tried to turn it off and on again ?" A LOT.
I'm not exactly hoping for an anwser. I just hope at some point I'll have a chance to escape from this kind of VR headset + software stack combination where things are supposed to work but they actually (often) don't.
I mean folks I really have a _huge_ list of bugs and glitches and problemes, on top of exciting and amazing features.
Quest Pro running the lastest v69, PCVR Meta Quest Link running v69, Air Link, Windows 10, GTX 3080ti... - joceline.dusentierHonored Guest
These forums are a GHOST TOWN...
I've spent three days trying to "debug" this problem. There is NO documentation (I know about the paragraph in the native/OXR doc), NO log, NO support, NO answers.
To recap:
- The problematic code was reliably WORKING on v63.
- It SILENTLY broke with a recent update (not sure which one).
- Everything is still reported as SUPPORTED: extensions are present (detached controllers + simultaneous tracking), function pointers are valid and system properties indicate that simultaneous tracking is supported. However, the call to resume simultaneous tracking now returns FALSE for UNKNOWN reasons.
- The official sample works SOMETIMES.
- I've dumped the OpenXR calls for both the official sample and our application: I can't see any substantial difference between the two sequences, unless the order of the calls matters precisely (it's mostly identical right now).
- I've checked all the logs I could find including everything available in Users/XXX/Local/Oculus.
- There doesn't seem to be a validation layer available for the Meta OpenXR runtime, and forcing the core LunarG validation layer prevents OpenXR from initializing (as expected).
- I'm considering switching to OpenGL, as that's the only real difference I can spot, but this is a massive PITA for what feels like a shot in the dark, and it's unlikely to lead to any positive result.
- I'm also considering quitting programming altogether, as these kinds of issues are becoming so frequent across all platforms that they're shaving too many years off my life expectancy. (ಥ﹏ಥ)
Is there any way to log everything that's happening or to get minute details about what's going on under the hood? Any hints on where to look for the root of the issue?
I've already activated everything I could on the OpenXR side to help tracking this down.
- joceline.dusentierHonored Guest
SO,
Having lost two more days on this issue, I can add the following crucial developments:
- The official sample:
- SOMETIMES works right away,
- SOMETIMES crashes when enabling simultaneous tracking,
- SOMETIMES just doesn't work.
v69, v71, Quest 3, Quest Pro—all the same. I’m officially giving up. Not that anybody cares.
If there’s still a developer working on this stack at Meta, consider logging error messages when a call fails. It helps, trust me.
By the way, these forums require me to log in through Instagram, then Meta, then Oculus, before I can post. I suspect the Quest software stack is in the same state, so I have a lot of empathy for the poor souls living this nightmare.
Rest assured, we too suffer.
Cheers.
- The official sample:
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device