cancel
Showing results for 
Search instead for 
Did you mean: 

[Interaction SDK] Hand Visual mismatch if rig was moved

PyxelFox
Honored Guest

Hey,

I wanted to implement locomotion for controllers and hands. While the locomotion works fine with controllers, the hands do not move correctly.

 

I am using the rig included in the SDK used in the samples scene:

PyxelFox_1-1646383811422.png

("HandVisual" and "HandSynthetic" behave the same, I tried both)

 

When moving or rotating the rig the colliders and pointer pos etc. are all correct, but the visual moves faster than the rig itself. For example: if I move the rig 0.3 in the Z direction, the hands look like they are at 0.6 in Z direction.
You can see this behavior in this image:

PyxelFox_0-1646383686654.png

 

The settings of the hand visual script are the default ones:

PyxelFox_2-1646383954477.png

Changing them completely breaks the hand position (they are stuck at 0,0,0) and only the fingers are updated.

 

Maybe someone can help me with this.

 

SDK Version: v37 for Unity

1 ACCEPTED SOLUTION

Accepted Solutions

PyxelFox
Honored Guest

A small workaround for the default visuals (without synthetic) is moving them under the Left/Right Hand Anchor in the OVRCameraRig and disabling "Update Root Pose" and "Update Root Scale". 
This keeps the hands at the correct position.

This does not seem to work with the Synthetic Visuals though, since disabling "Update Root Pose" breaks it.

EDIT:
Ok, moving just the OVRCameraRig inside the Rig Prefab seems to work. It seems like the InputOVR object does not like to be moved and needs to always be at the origin.

View solution in original post

1 REPLY 1

PyxelFox
Honored Guest

A small workaround for the default visuals (without synthetic) is moving them under the Left/Right Hand Anchor in the OVRCameraRig and disabling "Update Root Pose" and "Update Root Scale". 
This keeps the hands at the correct position.

This does not seem to work with the Synthetic Visuals though, since disabling "Update Root Pose" breaks it.

EDIT:
Ok, moving just the OVRCameraRig inside the Rig Prefab seems to work. It seems like the InputOVR object does not like to be moved and needs to always be at the origin.