Tracking in Headsets

There are a number of ways to improve tracking once headset mode has been enabled with the HeadsetManager.

Use Gyro

The useGyro property of a target makes objects relative to the target to attempt to keep their position when the user looks around, even when image tracking fails.

This is useful when dealing with large objects that will not fit into frame without requiring the user to alter the direction they are facing.

The option can be enabled from the properties panel of a target or in a script node by using the useGyro(...) function.

Default Scale

The defaultScale property of a target indicates the physical size of the target and is necessary in order to render the objects on the target at the correct depth and size in a 3D stereoscopic headset.

If the defaultScale is not correctly set, depth perception issue may arise causing eye strain and, goodness forbid, nausea.

The defaultScale of a target can be set in the properties panel with the target selected in the Hierarchy, or in a script node by using the defaultScale(...) function.

The default scale determines the physical size of 1 unit of target space in meters. Thus, since target space ranges from -1 at the bottom of the target image to +1 at the top, a defaultScale of 1 implies that the target is 2 meters in height. A target that is 40cm tall should have a defaultScale value of 0.2.

Gravity Billboard

Objects placed within a GravityBillboard node are rotated so they always remain upright with respect to gravity. This helps to keep objects vertical even if the target is rotating.

To create a new GravityBillboard in the Hierarchy right click on the target node and select 'New > Transforms > GravityBillboard' and give it a name. Place any objects you wish to remain upright with respect to gravity within the newly created node.

zapcode branded_zapcode i