Updated on 1st Dec 2021

Hands and Interaction

These Physical Hands are made to interact with absolutely anything. The Hand Mesh is the default Unreal Engine Mannequin Hand, which is included with the VR Template Project inside UE4. You can change the Hand Mesh by setting it to any other mesh that is based on the default UE Mannequin Hand Skeleton.

Grabbing and Pulling

Simply add a "grab" Tag to any Actor or Component that should be grabbed by the Hands. The same for Pulling an Object, you simply have to add a "pull" tag to it. You can also change the actual Tag names inside the settings of the VR Hand Blueprints.

Finger Collision

The Hands have Collisions for the Index Finger and Thumb. The Middle, Ring and Pinky Finger are combined into a single Collision.

Finger Poser

For any grabbed Object that does not have a Hand Interaction Component with a custom Animation, the Hands will automatically try to position the Fingers to the nearest Surface.

Physics

The VR Hands are fully based on physics and use a physics constraint to set their position and orientation.
It also can use a Curve to calculate Drag based on Distance. This allows you to increase the speed when the physics hand is too far away from the controller position.

Grabbing

Grabbing object with the Physics Pawn works with 3 different Physics Constraints that are being attached between hand and the object. The Primary (P) Constraint is the main constraint connecting hand to object. For improved stability, it will also use 2 Secondary (S) Constraints.

PD (Parent Dominates) Sphere and Constraints

A new feature introduced in VRGK 2.0 are the PD Settings. These have been included for use with the Physics Pawn, in order to reduce the physics lag between Hands and Controllers as much as possible. It also helps in some other areas of getting physics to feel just right.
During runtime, the VR Hands will now decide on their own if they should affect the physics pawn body or not. This is done by checking for some requirements, like currently colliding with an object or grabbing an object. It will then change the active constraints from the Body attached constraints, to a constraint where the Parent Dominates (PD).

When using the PD Switch, the PD Constraints will be active in most situations and will ignore the "HandBaseConstraint".

Snapshot Poser

A new feature introduced in VRGK 2.0 is the Snapshot Poser. This features is used in combination with the Full Body Avatar. It will generate Hand Animations, that are compatible with the Avatar Skeletal Mesh on runtime. If you are using custom animations on the Hand Interaction Component, then this will help you to reduce your work amount. You don't have to do manual animations for both Avatar Hands and just 1 Animation for the Right Hand, exactly like you would do it without the Full Body Avatar.
The generated poses are cached inside the VR Hand Actor and will be reused, instead of generating the same poses over and over.