Full-body motion capture in Unity3d using HTC VIVE
VIVE Motion Capture:
VIVE’ MoCap VR (Motion Capture, Virtual Reality) refers to recording actions of
human actors, and using that information to animate digital character models in
2D or 3D computer animation. Using VIVE’ MoCap is a great way to obtain Low
latency, close to real time, results. VIVE’ MoCap uses only 5 trackers which
allows you to, with ease, track and record body movement accurately.
VIVE Tracker makes it easier to design alternate controllers like guns,
gloves, virtual cameras and so much more. VIVE Tracker opens endless creative
possibilities for new and existing peripherals.
Support for SteamVR BS1.0
Support for SteamVR BS1.0 and
Power Button, micro-USB, Pogo Pin
Power Button, Pogo Pin (2018)
1/4 –inch UNC threaded mount
(standard tripod mount)
1/4 –inch UNC threaded mount
(standard tripod mount) (2018)
Wearing the Trackers:
• If the trackers do not come with straps, you may make your own.
An easy way to make them is by using Leather or Velcro straps
and strapping them on the trackers from behind so that they are
• Once you have the straps made, continue on to wear them as
• Wear two trackers, one on each elbow.
• Wear two trackers, one on each foot.
• Wear one tracker on your waist (Back).
• Wear one Headset.
• Hold the controllers, one in each hand
• Once you have all the trackers in place, you are ready to calibrate
(If using the default character provided by the asset, follow these steps)
• Start by dragging the MoCap Prefab MoVR/Prefabs/MoCapPrefab
into your scene
• Press Play
• Once in play mode, try to orient your direction with the direction
of the character in the scene
• Make sure all the trackers are being tracked. If not, adjust the
Vive sensors and your trackers
• Once they are tracking, enter play mode and stand in T-pose, press
and hold the triggers on each controller simultaneously for about
• A UI will pop up in your game view which will allow you to adjust
your rig should there be any difference between the character and
your human model.
• To perfectly adjust the rig, tweak the setting from the UI.
The UI in your game view allows you to make even the slightest adjustments to
your character rig.
• Adjust Rig: Lets you adjust the size of the character
• Adjust LookAt: Aligns the direction of the head vertically
• Hip Offset: Translates the position of the character from the
• Hip Rotation: Rotates the character from the centre
• Right Hand offset: Adjusts the position of the right hand
• Left Hand offset: Adjusts the position of the left hand
• Right Elbow Offset: Adjusts the position of the right elbow
• Left Elbow Offset: Adjusts the position of the left elbow
• Right Hand Rotation: Adjusts the rotation of the right hand
• Left Hand Rotation: Adjusts the rotation of the left hand
• Make Adjustments while standing in t-pose for accurate results.
Once you have calibrated your character with your body position,
you may start motion capturing.
(Before entering Play Mode)
• Insert “Original MA File Path” and “Save Folder Path” paths into
the Maya Animation Recorder script component attached to the
• “Original MA File Path”: insert the Maya ASCII file path of the
character in your scene
• “Save Folder Path” insert the path of the file where you would like
to save the recorded animations
• Once you have entered both paths, enter Play Mode and ensure
that your character is calibrated.
• Press “Q” to start recording
• Press “W” to stop recording.
If using your own character:
• If you want to use another model export a Maya ASCII file of the
character you are using and import it into your project. This file
should have no animations applied. Place your ASCII file in scene
hierarchy and copy the “IK Controller Script” and “Maya
Animation Recorder” script from the default character onto your
character in hierarchy as components.
• (Optional) Export your model as FBX to upload to Mixamo and
download a T-Pose FBX animation. Import this FBX into your
project scene. Make an animator controller for your character in
hierarchy. In the Animator window, assign the T-Pose animation as
default. In the animator settings, check the IK Pass. Your
character is now ready to use!