This article will cover a basic workflow in getting Xsens motion capture data that features a prop into Autodesk Motion Builder and attaching data to a 3D character with prop.
2. After a capture has been recorded, export an FBX with below parameters.
3. In new Motion Builder scene select File> Motion File Import> FBX exported from MVN studio> Open> Create if new scene or Merge if merging on multiple existing takes> Select import. You will notice the skeleton which normally has 23 joints now has an additional joint added to the area you selected for the prop in step 1.
4. Characterize this imported FBX skeleton. Go to Character Control window> Select Define Skeleton> Go to frame 0 in time slider (where skeleton is standing in T pose)> In view port select the Skeletons hip joint> In Character Control window right click over skeleton definitions hip> Select, assign selected bone> In character controls window go to load character definition (file with stick figure)> In load character definition window choose template HIK> press OK, bones will auto assign location because Xsens software exports an FBX with HIK naming convention. In character controls window select lock button> Select Biped, this creates a characterized character named character, "Character" is your raw mocap data.
5. Bring in a characterized character you want driven this will be your 3D character holding a prop. I will choose Tutorials file in Resources window> Asset Browser> Click and drag Aragor into view port> FBX merge> No animation.
6. Set 3D character to be driven by FBX raw data. In Character control window select character tab> Aragor (your 3d character)> In source tab> Character (raw FBX data). In playback character should be driven by raw FBX data.
7. Bring in a prop, name it prop. You can go through this entire processing with connecting geometry to the MVN FBX prop. If you want the prop to have its orientation set from a certain point then I would recommend rigging the prop in a 3rd party software, this way you can select a joint instead of geometry to drive orientation and translation of prop. For example a sword would be driven from its handle, not where the null is set in center of geometry.
Now you want translation of 3D prop to be relative to 3D characters movement and orientation of 3D prop to be driven by raw FBX's prop rotation. This way you are getting the prop locked to the proper global position and rotation accurately portrayed with out weird separations from geometry or flipping in rotations.
8. Translation of 3D prop. locate 3D avatars joint you want to drive translation in view port> in Resource Window> Asset Browser> Constraints> Drag position constraint on to 3D avatars joint in view port> Choose source object as this is where translation of prop will come from. In view port select prop (geometry or joint)> Hold X key> Click and drag prop into Constrained object of Position constraint on constraint settings. Different constraints can be found in Navigator window> Navigator tab> Constraints> Constraint name. In Position constraint select active, this will snap prop position to joint of 3D character.
9. Rotation of prop. locate the raw mocap data's FBX prop joint in view port> in Resource Window> Asset Browser> Constraints> Drag rotation constraint on to FBX's prop joint in view port> Choose source object as this is where rotation of prop will come from. In view port select prop (geometry or joint)> Hold X key> Click and drag prop into Constrained object of Rotation constraint on constraint settings. In Rotation constraint select active, this will snap prop to joint of 3D character.
10. Position the 3D prop in the appropriate spot of the 3D character. Now when character moves the Prop should translate with selected joint and FBX prop joint rotates the 3D prop should rotate.
Constraints are also keyable so if you have an object that needs to be set down or picked up you can key these constraints on and off to give the effect of loosing or picking up an item even though this does not look like what is happening in MVN studio.
thanks for reading this article, I hope it helps.