Skip to main content

Neck Tracker

The Neck Tracker object allows you to seamlessly track head and neck movements with objects. For example, you can use neck tracking to track a 3D necklace model to the neck.

neck tracker demo

Neck tracking is currently achieved by using an existing head-tracking algorithm. Neck tracking is simulated using 5 bones that rotate in relation to the head. This influences the drive of the 3D skin model to attain neck tracking.

Add a Neck Tracker Object

To add a Neck Tracker object, click + Add object in the Hierarchy panel, go to AR Tracking, and then select Neck Tracker.

neck tracker object

The Neck Tracker object is added to the General render group by default and is comprised of the following objects:

  • Neck Tracker
  • SkeletonAndRenderRoot
    • Head and Neck Occluder
    • HN_joint1
      • HN_joint2
        • HN_joint3
          • HN_joint4
            • HN_joint5
              • HN_joint6
neck tracker hierarchy

The parent Neck Tracker object contains the Neck Tracker component, which allows you to control bone weight and other parameters in the Inspector panel.

The Head and Neck Occluder mesh contains a Skin Mesh Renderer component that allows a mesh and material to be applied to a scene object with bones.

There are 6 joints in total, which are collapsed by default. The first through fifth joints have assigned bone weights, which you modify with the Neck Tracker component.

Use the Neck Tracker Object

After you've added the Neck Tracker object, add the object you want to track to the neck. For example, add a Cube object by clicking + Add object, going to 3D, and selecting Cube.

Drag the Cube object onto any bone in the Neck Tracker object, and adjust its Transform in the Inspector panel.

drag cube
note

When you parent an object under one of the bones, it will retain its current position. Be sure to reset the Transform component's Position property to 0, 0, 0.

Advanced: Create Your Own 3D Head and Neck Model

Advanced creators can use 3D model creation software to create their own head and neck models. Creators must bind 6 joints to their models to reflect the joints in the Neck Tracker object. These joints have fixed names and parent-child hierarchies. Bad cases can lead to errors.

The following bad cases should be avoided:

  • Removing default bones from the navigation tree (all or specific ones).
  • Positioning the model under the bone hierarchy or head model hierarchy.
  • Importing any unskinned model.
  • Importing a skinned model with incorrect bone naming.
  • Importing a skinned model with incorrect bone hierarchy.
  • Importing a skinned model with missing bones.

Export both the bones and the model from your model creation software and import them into Effect House. Then add a Neck Tracker object and drag the model directly beneath it.

At this point, neck tracking is active. However, you can adjust the bone weights in the Neck Tracker component. The closer the parameter is to 1, the greater the influence of head movement is on the movement of the joints.

Head and Neck Occluder Mesh

You can also access the Head and Neck Occluder mesh separately from the Assets panel. Click the Add button [+], go to Mesh, and then select Head and Neck Occluder.

head and neck occluder

Components