November 6, 2019 update:
  • There's a new open source Cardboard SDK for iOS and Android NDK that offers a streamlined API, improved device compatibility, and built-in viewer profile QR code scanning. A corresponding Unity package (SDK) is planned for a future release. We recommend that all developers actively building for Google Cardboard migrate (iOS, Android NDK) to the new Cardboard SDK.
October 15, 2019 update:
  • The Daydream View VR headset is no longer available for purchase. However, you can continue to use the existing Google VR SDK to update and distribute your apps to the Google Play Store, and make them available to users in the Daydream app.

Enabling 6DoF head tracking

To enable 6DoF head tracking in your application, you must modify your application manifest.

Applications that work in both 3DoF mode and 6DoF mode must declare:

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

Applications that rely on 6DoF tracking for core functionality and cannot not be used without 6DoF tracking must declare:

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

If the application works only in 3DoF, the uses-feature tag must be omitted.

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.