Maya - Streaming from Hand Engine

This document will take you through the steps of connecting to Maya with a Hand Engine data stream.


1. Set Up the Remap Tool in Hand Engine

Remapping is the function of assigning the bones of the hand asset within Hand Engine to drive the correct bones on the asset you are streaming hand data onto in another software. 


- This task will need to be completed prior to streaming hands to Maya

Set up the T-Pose of your rigs FBX

In order to remap the Hand Engine output to your custom character, you must first create an FBX that has just your target character in it and that character is in a full T-Pose that is saved at the first frame in the FBX.

The character must be in a full T-pose, with each hand in an L-Pose. The fingers of the character should align with a major axis of the scene/FBX.

Please note this FBX is used only for extracting bone hierarchy and rotation order data from your character. Once the remapping process is complete, you will be able to stream data from Hand Engine to any FBX/scene containing that character.

The key features for each hand pose are:

  1. The palm is facing down and is parallel to the ground plane

  2. The fingers are pointing straight out and are parallel both to each other and to the ground plane, and are aligned with a major axis of the scene/FBX e.g. the X-axis in the screenshots below.

  3. The thumb should be pointing straight ahead, perpendicular to the fingers, and parallel to the ground plane. It should be aligned with one of the other major axes of the scene/FBX, such as the Z-axis in the provided screenshots. Additionally, the thumbnail should be facing towards the body, which means it should be pointing in the opposite direction to which the fingers are pointing.

NOTE: The Hand Engine hand asset is set up using the metric system. Please ensure that your target FBX is set up with the same measurement system (working units in centimeters) in the software you are streaming to (for example if using Maya refer here)

Example of correct bind L-Pose

 Correct T-Binding Pose

Common Mistakes

The thumb is in a relaxed position. This will cause the thumb to be tucked in too close to the hand

Common Mistakes - Example 1

Fingers are curled/in a relaxed position. This will cause the fingers to be over-rotated then creating a fist.
Common Mistakes - Example 2
Fingers and thumb are correctly set, but the hand/arm is rotated relative to the major axis of the global scene. This will cause off-axis rotations of the fingers/thumb when curling them.
Common Mistakes - Example 3

Creating a remap profile in Hand Engine

  1. Open the remapping tool by going to Tools -> Remapping
  2. Select the character FBX you have set up as per the above instructions:
  3. Once the file has been selected, please select the root of the left hand from the left drop-down menu(1), or you can use a previously saved Remap profile(2). 
  4. Hand Engine will detect the remainder of the bones on the hand hierarchy and list them below. 

    This is how the Hand Engine asset is mapped. Please use this as a guide for assigning the bones of your asset to the bones of the hand in Hand Engine:

    hand bone map

  5. The right-hand column contains the hand bones of the asset within Hand Engine. Please select the associated bone to match your character's hand bones from this list. 
  6. Once this has been completed, you can adjust the save name of this mapping at the top right-hand side:
  7. To save this remapping, click on submit at the bottom of this window:

If you need to make any adjustments to this remapping, you can make the changes and click update at the bottom. It will overwrite the previous saved remap:

Assigning remap profile to a hand

  1. Please connect gloves and perform a calibration
  2. Click on Remapping Target in the hand setup box, and select your recently added remap. Make sure to add it for each hand.
  3. Once this has been done for each hand, the hands are now ready to stream outside of Hand Engine to your software of choice. 

NOTE: If you have created or updated a remapping profile, after selecting the remapping target for each hand, please turn the TCP stream OFF and then ON again to make sure the new remapped stream is active. 

2. Setting up your Maya Project

  1. Download and Install the StretchSense Hand Engine and Maya

    NOTE: for this example, we are using version Maya 2020

  2. Launch Hand Engine and calibrate your gloves.

  3. In the Streaming box enter your TCP Port number and set the switch to On. Check that the Streaming Status light in the Performer pane has turned green

  4. Next, we need to add the plugin directory to the Maya Environment Variables. To do this, first, navigate to the Plugins folder where you have saved your downloaded plugins (see image below) find the plugin directory corresponding to the Maya, and copy this file path.



  5. Open the Maya.env file in a text editor this will be found in \Users\<username>\Documents\maya\<Maya version>\Maya.env




  6. In Maya.env add the single line of code MAYA_PLUG_IN_PATH = <plugin install directory>

    e.g. MAYA_PLUG_IN_PATH = C:\Users\<your username>\Downloads\Plugins-Hand-Engine-Update-2021-03-24\StretchSense Hand Engine Plugin Pack (2021-03-24)\Maya 01.00.01



  7. Launch Maya, click on File, then Import to import the asset you want to stream hand data to. 

  8. To launch the plugin, open Windows → Settings/Preferences → Plug-in Manager



  9. From the Plugin Manager find and tick the Loaded box. If it is already ticked, you can click on it twice to reload the plugin.



  10. This will launch the Hand Engine Link window:



  11. If your target asset is using a namespace you can select this from the drop-down, if not leave this box blank.



  12. Press Connect and data will start streaming to the target asset.

  13. You can follow our Desk Capture guide on how to keyframe in Maya using the plugin.