Skip to main content
New Participant
October 16, 2025
Question

How to show hands while using controller input to grab objects (Meta All-in-One SDK)

Hi,

I'm currently developing a VR experience using Unity (2022.3.62f1) and the Meta All-in-One SDK(ver. 78.0), where users are physically holding controllers, but hands are shown instead of controllers — so that interactions appear to be done with hands, even though the input is coming from the controllers.

To support this, I've enabled controllerDrivenHandPosesType so that the virtual hands animate based on controller input.

Additionally, I configured the controllerButtonUsage property of the GripButtonSelector inside the ControllerGrabInteractor (under [BuildingBlock] OVRInteractionComprehensive > Left/Right Interactions) to use the Primary Button, allowing users to grab objects via button press.

However, in this setup, the interaction still seems to be treated as hand-tracking-based.
As a result, the HandGrabInteractable component (set via [BuildingBlock] HandGrabInstallationRoutine) follows the Pinch Grab Rules — so the user must still pinch specific fingers to grab an object, even though they're using controller input.

 What I’m trying to achieve:

  • Show hands instead of controllers
  • Allow grabbing with a controller button (e.g., Primary Button)
  • Disable or bypass pinch gesture requirements

My Question:

Is there a supported way to simulate hand-based interactions visually, but use controller buttons to grab, without requiring pinch gestures?

If there’s a recommended approach, workaround, or best practice to achieve this using the Meta All-in-One SDK, I would greatly appreciate any guidance.

Thanks in advance!

1 reply

Meta Employee
October 20, 2025

Hey minafinity.2025,

Thank you for your message. 

The HandGrabInteractors in your Rig use something called HandGrabAPI in order to process the input. You can replace the "hand pinch" with any other signal, like a Trigger. Add a ControllerPinchInjector.cs next to the HandGrabAPI and it will replace the Hand with Controller trigger input.  If you want to re-create this to support discrete buttons instead of triggers you might want to create your own IFingerAPI based on the Trigger one.

I believe the HandGrabExamples.unity sample scene is functioning this way too, and for the OVRComprehensiveRig.prefab this is supported by default.