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.

GvrControllerPointer prefab

Provides a rendered Daydream controller with built-in laser pointer that moves in response to the user's motion based on the configured arm model.

Must be a sibling to the main camera, so that the camera and controller transforms share a common parent transform. This ensures that the controller remains visible as the user changes the direction in which they are facing.

Requires an instance of the GvrControllerMain prefab to exist in the scene in order to be use the Google VR input system.

Prefab Hierarchy

Game object name Description

Ensures that the controller's local position and local rotation are updated based on the configured arm model settings.

Renders the controller. Can be disabled or removed if your app handles controller rendering.

Laser

Renders the built-in laser pointer and controls the raycast mode used by the pointer. Can be disabled or removed if your app handles pointer input through custom code.

Reticle

Renders the built-in reticle at the end of the laser pointer. Can be disabled or removed if your app provides its own custom reticle.

GvrControllerPointer game object

Ensures that the controller's local position and local rotation are updated based on the configured arm model settings.

Includes:

  • GvrTrackedController that is responsible for updating the controller local position and local rotation each frame, based on the configured arm model settings

  • GvrArmModel that allows for basic customization. This arm model can also be replaced for more advanced use cases. See also the custom arm models provided by Daydream Elements

Components: GvrArmModel, GvrTrackedController, UnityEngine.Transform

ControllerVisual game object

Renders the controller. Can be disabled or removed if your app handles controller rendering.

Use the Attachment Prefabs list to specify any number of prefabs that should be instantiated at runtime with the controller, such as a tooltips prefab.

The SDK includes two customizable tooltips prefabs:

Components: GvrControllerVisual, UnityEngine.MeshFilter, UnityEngine.MeshRenderer, UnityEngine.Transform

Laser game object

Renders the built-in laser pointer and controls the raycast mode used by the pointer. Can be disabled or removed if your app handles pointer input through custom code.

Components: GvrLaserPointer, GvrLaserVisual, UnityEngine.LineRenderer, UnityEngine.Transform

Reticle game object

Renders the built-in reticle at the end of the laser pointer. Can be disabled or removed if your app provides its own custom reticle.

Components: GvrControllerReticleVisual, UnityEngine.MeshFilter, UnityEngine.MeshRenderer, UnityEngine.Transform