2

I am able to build and run my app for Oculus Quest 2 using Unity 2020.2. However, I'm trying to get the hand interaction to work. In the HandInteractionTrainScene from the Oculus Integration package, I tell me I need to enable hand tracking.

I've searched around a bit and this should be solved by setting the "Hand Tracking Support" in OVRCameraRig to "Hands Only". Problem is that the field is disabled and I can't figure out why. I've been struggling with this for a while now.

OVRCameraRig with OVR Manager script

Does anyone have any suggestion on what the root cause might be?

maanijou
  • 1,067
  • 1
  • 14
  • 23
cmhedlund
  • 21
  • 1

2 Answers2

0

To enable the quest features section you should switch the build platform to Android (File->Build Settings->Android->switch platform).

0

My Unity editor version: 2021.3.5f1

To enable hand tracking using Oculus integration


  1. Go to Window > Package Manager > Packages: In Project

make sure Oculus XR Plugin is imported and up to date.

view example 1


  1. Go to Edit > Project Settings > XR Plug-in Management > Windows, Mac, Linux settings (monitor icon)

tick the following:

  • Initialize XR on Startup
  • Oculus

view example 2


  1. Go to Edit > Project Settings > XR Plug-in Management > Android settings (android icon)

tick the following:

  • Initialize XR on Startup
  • Oculus

see example 3


  1. Go to Edit > Project Settings > Player > Android settings (android icon) > Other Settings

In the Configuration section do:

  • Scripting Backend: IL2CPP
  • Untick ARMv7
  • Tick ARM64
  • Active Input Handling: Both

see example 4


  1. In the Project section search for OVRCameraRig prefab
  • Drag it to the Hierarchy section

see example 5


  1. In the Project section search for OVRHandPrefab prefab

In the Hierarchy section do:

  • expand OVRCameraRig
  • expand LeftHandAnchor
  • expand RightHandAnchor
  • drag the OVRHandPrefab prefab from the Project section and drop it as a child for LeftHandAnchor and RightHandAnchor

see example 6


  1. Click on OVRHandPrefab prefab under LeftHandAnchor and ensure:

In the Inspector section:

  • Hand Type: Hand Left
  • Skeleton Type: Hand Left
  • Mesh Type: Hand Left

see example 7


  1. Click on OVRHandPrefab prefab under RightHandAnchor and ensure:

In the Inspector section:

  • Hand Type: Hand Right
  • Skeleton Type: Hand Right
  • Mesh Type: Hand Right

see example 8


  1. Click on OVRCameraRig and select:

In the Inspector section:

  • Hand Tracking Support: Hands Only

  1. To adjust the tracking origin click on OVRCameraRig and choose from:

In the Inspector section:

  • Tracking Origin Type: Eye Level, Floor Level, Stage

  1. Go to File > Build Settings
  • Add the appropriate scene in the Scenes In Build
  • Platform: Android
  • In Android section > Run Device: [your Oculus]
  • Click on Build And Run

Conclusion

I assume you have your Oculus device plugged in to your computer and it is in Developer mode and you cannot test the hand tracking in play mode in Unity.