Develop
Develop
Select your platform

Controller Input and Tracking Troubleshooting

Updated: Nov 10, 2025

Overview

This topic describes some common issues and solutions when implementing controller input and tracking in your project.

Why are my runtime controllers not displaying?

If your project contains OVRControllerPrefab, from the Hierarchy tab, expand OVRCameraRig > TrackingSpace > LeftHandAnchor > LeftControllerAnchor, select OVRControllerPrefab, and then from the Inspector tab, clear the checkbox to disable the prefab. Repeat this step to disable OVRControllerPrefab under the RightControllerAnchor.

Why does the reported controller position not appear to line up visually with my controller?

When using GetLocalControllerPosition(), remember that it is the position relative to its own tracking space. To convert to a world space location, you can add the position of the TrackingSpace object in the OVRCameraRig prefab.

Learn more

To learn more about using controllers in XR applications in Unity, see the following guides:

Design guidelines

  • Input modalities: Learn about the different input modalities.
  • Head: Learn about design and UX best practices for using a head input.
  • Hands: Learn about design and UX best practices for using hands.
  • Controllers: Learn about design and UX best practices for using controllers.
  • Voice: Learn about design and UX best practices for using voice.
  • Peripherals: Learn about design and UX best practices for using peripherals.
Did you find this page helpful?
Thumbs up icon
Thumbs down icon