Forum Discussion
craigasanford
6 years agoHonored Guest
Hand tracking right index pinch counts as button press?
So I have a VRTK (3.3) teleporter pointer setup to work with the controller left button One press. When I setup hand tracking using the OVRHandPrefab and set the Oculus manager to Hands only for some crazy reason doing a Pinch with my right hand activates the teleporter. I cannot figure out why!! The only scripts related to hand tracking i have are on the prefab.
And really I want to know HOW its simulating the button press / activating the teleporter so I can use pinches to simulate other button presses!
Anyone have a clue how/why this is happening?
5 Replies
Replies have been turned off for this discussion
- AltairEONExplorer
Hi have you figured this out? Do you have an update on this? Thanks.
- Anonymous
Index finger pinch on the "primary" hand generates an OVRInput.Button.One event and index finger pinch on the "secondary" hand generates a OVRInput.Button.Three event. The secondary hand also generates a OVRInput.Button.Start event when you perform a system gesture on that hand.
OVRInput.Get[Down/Up](OVRInput.Button.One, OVRInput.Controller.Hands)
OVRInput.Get[Down/Up](OVRInput.Button.Three, OVRInput.Controller.Hands)
OVRInput.Get[Down/Up](OVRInput.Button.Start, OVRInput.Controller.Hands) // System gesture on secondary handVRTK must be reading these values somewhere. You can swap which hand is "primary" in the device settings hand tracking options. "Primary" hand is the one with the Oculus icon when you perform a system gesture.
- AltairEONExplorer
Thanks so much. I'll try this out.
- MikyjaxProtege
Hello,
I just discovered that behaviour, is there a way to disable it? I'm building a game using concurrent hands & controllers tracking and I need those buttons to remains controllers only. This is sending a lot of A & X button presses accidentally.
Thanks
- LucaMefistoMeta Employee
Hi craigasanford (and others in this thread).
I have come across this OVRInput.Get issue recently too. It looks like the mask for OVRInput.Get is not working as expected. If you useOVRInput.Get(OVRInput.Button.One, OVRInput.Controller.RTouch)You will still get a Button A press even if it was a pinch, likewise if you do
```
OVRInput.Get(OVRInput.Button.One, OVRInput.Controller.RHand)
```
You will get a button press in the hand when pressing button A.
It seems this has been the case for a while, but Concurrent Hands have surfaced it more clearly. For now you should be able to check if a Controller is Connected using `OVRInput.GetConnectedControllers()` to decide if the button was a Controller Press or a Hand Pinch. But hopefully the core issue can be remedied soon.
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 2 years ago
- 2 years ago