Show / Hide Table of Contents

Hand Grabber

The HVRHandGrabber components reside on the hand rigid body objects. It is important to note how the grab flow works.

The hand operates in "Hand Grabs" or “Pull” mode for physics based grabbing that use Configurable Joints.

Hand Grabs

The hand will move to the object to grab it and immediately create a Final strong joint with the object. After which the hand returns to the controller via physics.

This will happen if:

  • HandGrabs is enabled on the HVRHandGrabber.
  • HVRGrabbable is marked Stationary
  • HVRGrabbable is Joint based without a rigid body.
  • The object being grabbed is already held with one hand.

Hand Pulls

The grabbed object will be pulled towards the hand using the HVRJointSettings supplied in the “Pulling Settings” field.
This approach uses physics forces which prevents objects from getting stuck (which would require other systems to handle unstucking objects) and prevents hitting surrounding objects with infinite force while the object moves and rotates into position.
If the object can't move into pose position due to collision, the hand will go to retrieve the object after a customizable Timeout.

Each HVRGrabbable can have this pull joint setting overridden, which should be done for objects greater than 2 mass.

Final Joint

When Hand Grabs completes, or Hand Pulls has pulled the object close enough, a final "strong" Configurable Joint is created between the hand rigid body and the grabbable rigid body.

The settings of the joint can be overridden globally @ HVRSettings.DefaultJointSettings or per grabbable's JointOverride field.

  • Improve this Doc
In This Article
Back to top Generated by DocFX