Enabling 6DoF head tracking in Unreal Engine

  • Enable 6DoF head tracking in Unreal Engine for Android by configuring GoogleVR settings in Project Settings to include "Daydream (6.3 DoF)".

  • Your application can support both 6DoF and 3DoF modes by enabling "Daydream (6.3 DoF)" alongside "Daydream (3.3 DoF)" or "Cardboard" settings.

  • WorldSense technology on Daydream Standalone uses a safety cylinder for 6DoF tracking, restricting user movement to a limited area.

  • Maintaining a consistent 75 FPS frame rate in 6DoF apps is crucial for a smooth user experience and avoiding certification issues, as drops below 60 FPS can lead to noticeable visual artifacts and discomfort.

To enable 6DoF head tracking in Unreal:

  • Go to Settings > Project Settings > Platforms > Android. Scroll to the Advanced APKPackaging section and look for the setting Configure GoogleVR to support specific hardware configurations. Ensure you have an entry for Daydream (6.3 DoF).

    • If you enable only Daydream (6.3 DoF) your application will only work on devices that support 6DoF. The following will be added to your manifest:

            <uses-feature
             android:name="android.hardware.vr.headtracking"
             android:version="1"
             android:required="true" />
      
    • If you also enable Daydream (3.3 DoF) or Cardboard, your application will work in 6DoF mode on devices supporting 6DoF, or 3DoF on other devices. The following will be added to your manifest:

            <uses-feature
             android:name="android.hardware.vr.headtracking"
             android:version="1"
             android:required="false" />
      

Note that WorldSense, the technology that powers 6DoF tracking on Daydream Standalone, uses a safety cylinder which limits the user's movement to a small area.

Performance implications

6DoF head tracking is more sensitive to application frame rate than 3DoF head tracking. Application framerate inconsistency is also more noticeable to the user in 6DoF. If the frame rate is too low, the application may fail the certification process.

Performance recommendation:

  • In 6DoF apps should target 75 FPS. Drops below 60 FPS will likely cause noticeable visual artifacts and user discomfort.