This repository houses Unity components for streaming data from Qualisys Track Manager (QTM) to Unity.
Download the Asset package at releases
Character animation using QTM Real-Time Output
- In your Unity project, select Import Package > Custom Package... and import this package.
- Double click the file DemoSkeletonQtm to launch QTM.
- In QTM. Start streaming by pressing Ctrl + Shift + Space or select Play > Play with Real-Time Output
- In Unity, open the scene DemoSkeletonScene.
- Press Play.
- Connect to localhost using the right side menu. Note that you can also use the editor window to connect to QTM. It's located under Window > Qualisys > RTClient
The scripts below can be attached to GameObjects for streaming data from QTM. They are built using the Qualisys Real-time Client SDK for .NET.
- RTGenericSkeleton.cs - Control a generic Unity rig using custom skeleton streaming from QTM.
- RTSkeleton.cs - Add this script to use qtm skeleton data to drive mecanim humanoid character in Unity.
- RTMarker.cs - Add this script to a Game object to set the position of game object from a specific labeled marker name.
- RTUnlabeledMarker.cs - Add this script to a Game object to set the position of game object from a specific unlabeled marker id.
- RTMarkerStream.cs - Add this script to a Game object to visualize marker positions (using spheres) streamed from Qualisys Track Manager.
- RTBones.cs - Add this script to a Game object to visualize user defined bones (using line gizmos).
- RTObject.cs - Add this script to a Game object to get 6DOF object positions and rotations streamed from Qualisys Track Manager.
- RTObjectMarkers.cs - Add this script to Game objects of a 6DOF object body markers.
- RTGazeStream.cs - Add this script to visualize gaze vectors as lines.
- RTAnalog.cs - Example script to display how to get data from a specific analog channel (using name).
- RTAnalogIMU.cs - Add this script and set analog channel names for IMU data (X, Y, Z, W).
- RTForcePlate.cs - Add this script to visualizie force plate data. Example scene: DemoForceDataScene
These are helper scripts used to communicate with QTM and add functionality to the Unity user interface.
- RTClient.cs - Main script that handles the communication between Qualisys Track Manager and Unity.
- RTGUI.cs - This script is responsible for handling the Window->Qualisys->RTClient option that shows the QTM Streaming window where the user can select which Qualisys Track Manager to connect to.
- RTGUIInGame.cs - This script can be used to show a QTM connection user interface when in Game mode.
The Unity SDK includes a packaged version of the Qualisys Real-time client SDK for .Net.