Xsens MVN Analyze/Animate, developed by Xsens, is the main software tool for interfacing with the MVN inertial motion capture suit. MVN Analyze/Animate allows the export of motion capture data to third party applications such as MotionBuilder, XSI, 3D Studio Max, Maya, etc. making the data available to drive rigged characters in animation and more. The data transfer to other applications is primarily file-based (export) when using MVN Analyze/Animate.
However, in many scenarios, it is attractive to keep the ease of use of MVN Analyze/Animate, but still being able to receive and process the motion capture data in real-time in another application, even on another PC, possibly physically remote from the MVN system.
To this end, MVN Analyze/Animate can act as a server on a network and stream motion capture data in real-time to a client PC running a client application. This document specifically treats the use of a certain client application able to receive motion capture data in real-time, Autodesk MotionBuilder.
Note: In this workflow, we assume both MVN Analyze/Animate and MotionBuilder 2020 are properly installed and the user has a good overall knowledge of working with both programs. Throughout the workflow, Quickoverviews are given in the form of GIFs at the start of the procedure. Pictures are placed AFTER the corresponding text.
1.1 What's improved in this release?
The MVN MotionBuilder live plug-in has been updated to support the latest release of Autodesk MotionBuilder.
1.2 Character tool in Motion Builder
The easiest way for MVN to send the complete full-body motion capture data to another application is to send the 3D positions and 3D rotations of each bone directly. MVN Analyze/Animate is able to do this in real-time streaming over the network (Quaternion and Euler based rotations).
The Quaternion based protocol is currently used to stream to MotionBuilder. On the receiving end.
1.3 Streaming to MotionBuilder device
To get optimal results, the streaming settings from MVN Analyze/Animate to MotionBuilder have to be set correctly. It is recommended to set the receiving end in MotionBuilder to 60 fps.
Motion data sent by MVN Analyze/Animate is sent in real-time to MotionBuilder time-wise.
However both MVN Analyze/Animate and MotionBuilder are operating on a non-real-time operating system, so timing cannot be guaranteed in the Viewer. Additionally, depending on system resources MotionBuilder is not able to process all incoming data. The timing of the incoming keys is done on the basis of the best effort by MotionBuilder. Timing in a recording is guaranteed, as each pose sent is time stamped.
The MVN MotionBuilder live plug-in is a good solution when real-time viewing or when recording is required. Otherwise, we recommend the offline pipeline using the ‘MVN_FBX_import.fbx’ template to ensure optimal quality.
Xsens provides a free downloadable version of the MVN MotionBuilder Live Plug-in Installer:
This will run an installation wizard. Just follow the steps indicated in the wizard.
The plug-in can be found here: https://www.xsens.com/integrations/motionbuilder
2.1 Location of Installed files
The installer will detect the install location of MotionBuilder and place the files in the appropriate folders. If MotionBuilder is not installed, the files will be installed in the default install location of MotionBuilder, which is:
C:\Program Files\Autodesk\MotionBuilder 2020
You can always manually copy the needed files to the default installation folders as indicated below.
|File Name||Purpose||Default Location|
|MVN56_Mobu2020_x64.dll||MVN MotionBuilder device plug-in||C:\Program Files\Autodesk\MotionBuilder 2020\bin\x64\plugins|
|MVN.TIF/MVN-l.TIF||MVN MB device icon||C:\Program Files\Autodesk\MotionBuilder 2020\bin\System|
|MVN MB templates||C:\Program Files\Autodesk\MotionBuilder 2020\Templates\MVN|
3 GETTING STARTED
3.1 Set up MVN
1. Open MVN Analyze/Animate
2. Open an MVN file or MVNX file or use the MVN suit in a live setup
3. Go to: Options > Network Streamer
4. Add a target destination (with default values: Host 127.0.0.1, Port 9763, Protocol UDP
5. select a format that the MotionBuilder plug-in will interpret properly: “Position + Orientation (Quaternion)”
6. When running MotionBuilder on another PC, input the IP-address of that PC in the Host field. If it is the same PC as where MVN Analyze/Animate is running, you can just leave it at the default ‘127.0.0.1’ = localhost).
3.2 Set up MotionBuilder
1. Open MotionBuilder
2. Drag and drop the ‘MVNLive1_4Actors.fbx‘ from the ‘MVN’ folder in the Asset Browser into the viewer and choose “FBX Open” > “<All takes>”.
3. Go to: Navigator > Devices > double click MVN live plug-in
4. If the device is Offline (red), tick ‘Online’ (first yellow, then green) and ‘Live’ box and after a while you should be receiving data from MVN Analyze/Animate, visible by an increased number of “sample(s)/s”.
NOTE: A warning may appear saying:
Switch in MVN Analyze/Animate in 'Options' 'Network Streamer Settings' the Protocol and data set' to 'Quaternion-base orientation'
This is to remind you during setup that the right data set needs to be selected.
5. Set Ideal sample rate to 60
6. Change the Port number if needed, the default port number is ‘9763’.
You should now be able to receive motion capture data in real-time from MVN Analyze/Animate mapped onto the MVN Character defined in the template. MVN Analyze/Animate will stream from its active window that is playing. This can be an MVNX, MVN, MVNS file or a live MVN system
3.3 Multiple Actors
The plug-in supports the handling of up to 4 actors at once. The names of each character in MVN Analyze/Animate will be used as an identifier of the corresponding Character in MotionBuilder. You can map the Characters to specific actors by selecting their “Source” in the “Character Controls”
If you do not use multiple actors, you can easily hide any unused characters in MotionBuilder, in the View > Schematic view (Ctrl+W). Select the unused nodes (e.g. by dragging a rectangle around them) and click 'Display' > 'Hide Selection' (Shift+H). You return to the original view with View > Perspective (Ctrl+E), “Producer perspective”.
3.4 How to map on a Character
1. Choose a character e.g. by dragging one into Scene from the asset browser:
2. Choose FBX Merge > No Animation
3. Expand Characters in Navigator window > Double click your character
4. Under Input Type choose > Character Input
5. Under Input Source > Chose the preferred character from MVN you want to drive the rig
6. And tick the 'Active' box
MotionBuilder will now re-target the motion capture data received through the ‘MVN Character’ onto the character rig. This re-targeting and the settings used in the re-targeting of the motion capture data can be very advanced, as well as the character rig. This is not discussed further in this article.
4 ADVANCED FEATURES
4.1 Translate Rotate the reference node
By selecting the ‘SkeletonLayer:Root’ you can move the local reference of the motion-captured data inside your scene. This can be convenient when placing multiple persons/characters in a single scene or for alignments with a scene.
You can also translate and rotate each individual character separately by selecting ‘SkeletonLayer:C#_Root’.
When working with props you need to use the ‘MVNLive1_4Actors.fbx’ template file to bring in the prop data in MotionBuilder. The props are visualized by a red cube node, this can be used as an input to drive the actual prop of the final character.
4.3 Finger Tracking Data
When using finger data, you have to include Send Finger Tracking Data in the Network Streamer Options.
The finger data will automatically be included in the skeleton.
The MVN MotionBuilder live plug-in allows you to record in real-time. MVN Analyze/Animate is time-stamping every frame it sends to MotionBuilder, this information is needed to place the frames precisely on the timeline.
We advise only to use this functionality when recording in MotionBuilder is required. This may be needed when you combine recording with another device or speed up the pipeline. Otherwise, we recommend the offline pipeline.
1. First, you need to check the “Recording” checkbox in the MVN device
2. Then, on the time bar, you have to press first the “Record” and then “Play” buttons and you will
3. You stop the recording by pressing the “PLAY” button again
4. After you have stopped the recording you need to right-click on the time bar and choose
“Time > Frame Take”, which will put the beginning and end of the recording in the timeline
NOTE: you are recording on the MVN device, so if you need to see the animation curves you
5. Select the MVN device in the “Navigator” window and uncheck the “Live” checkbox (to stop
the live stream)
6. With the MVN device still selected go to the “FCurves” tab in Navigator and select the curve
you want to view or edit