Degrees of freedom

  • Degrees of Freedom (DoF) in VR refer to the ways a rigid body can move, encompassing 3 rotational (pitch, yaw, roll) and 3 translational (forward/backward, left/right, up/down) movements.

  • VR devices are categorized as 3DoF (rotational tracking only) or 6DoF (rotational and translational tracking).

  • Developers are encouraged to build VR applications supporting both 3.3 (3DoF headset & controller) and 6.3 (6DoF headset & 3DoF controller) configurations for broader compatibility.

  • 6DoF head tracking eliminates the need for a neck model, providing realistic head movement, while 3DoF relies on neck models for simulating movement.

  • When transitioning to 6DoF, custom neck models might need removal, as Daydream automatically handles neck model implementation in 3DoF fallback scenarios for 6DoF apps.

Degrees of freedom (DoF) refer to the number of basic ways a rigid object can move through 3D space. There are six total degrees of freedom. Three correspond to rotational movement around the x, y, and z axes, commonly termed pitch, yaw, and roll. The other three correspond to translational movement along those axes, which can be thought of as moving forward or backward, moving left or right, and moving up or down.

VR headsets and input devices are generally 3DoF or 6DoF.

3DoF means we can track rotational motion but not translational. For the headset, that means we can track whether the user has turned their head left or right, tilted it up or down, or pivoted left and right.

6DoF means we can additionally track translational motion. That means we can track whether the user has moved forward, backward, laterally, or vertically.

For example:

  • Daydream View features a 3DoF headset and 3DoF controller, commonly referred to as "3.3".
  • Daydream Standalone features a 6DoF headset and 3DoF controllers, commonly referred to as "6.3".

We recommend that developers target 3.3 and 6.3 in a single app.

Key development differences

  • 3DoF head-tracking means you can only track rotational movement.
  • 6DoF head-tracking means you can track both position and rotation.
  • In 3DoF you need to use a neck model to simulate realistic movement, which Daydream provides.
  • In 6DoF a neck model is not necessary because the actual position and rotation of the head are known.
  • When you use 6DoF tracking and WorldSense has to fall-back to 3DoF, WorldSense will handle the neck model implementation for your app so you don't have to write it in yourself.
  • When updating from 3DoF to 6DoF, if you wrote a custom neck model, you may need to remove it. If you used the Daydream neck model it will be turned off automatically.