Skip to content

License requirement

The functionality described requires a MANUS Bodypack or a MANUS license dongle containing one of these licenses to be connected:
Core Pro Core XR Core Xsens Pro Core Qualisys Pro Core OptiTrack Pro Demo

Getting started

This guide will help you install and set up our Unity plugin.

Note

The Unity plugin supports the following versions of Unity, 2022.3 2021.3 2020.3 2019.3. This does not mean it won't work on older (or newer) versions but your milage may vary.

Installing plugin

  1. Go to the MANUS Download Center and create a free account or log in if you already have one.

    alt text

  2. Download the plugin as a zipped file and save it on your computer. Unzip the file to extract its contents.

    alt text

  3. Open your intended Unity project.

  4. In Unity Editor, go to Assets > Import Package > Custom Package.

    alt text

  5. Locate the package file you downloaded and select it.

    alt text

  6. Click Import to start the process.

  7. Once the import is complete, the assets from the package will be available in your project.

Setting up

  1. Locate the Communication Hub under the Manus tab in the toolbar. This is where you can manage the MANUS Core connection settings.

    alt text

  2. Within the Communication Hub, the plugin is set to automatically connect to MANUS Core instances running on the same machine (locally).

    alt text

  3. If you want the plugin to search for hosts on the local network, make sure the Connect locally only option is disabled.

  4. To connect automatically to the first host found, ensure that the Connect Automatically option is enabled.
  5. If you want to update the list of available MANUS Core hosts, click on the Get Available Hosts button. This will provide you with a list of available hosts.

    alt text

  6. Select the desired MANUS Core host and click on Connect, The status should now say Connected To (Name of your host).

    alt text

  7. The connection settings will be carried over to a build of your project.

    Warning

    When not using Connect Automatically make sure your application has some logic in place to handle the connection.

  8. After connecting to a host, if the Connect Automatically option is enabled, the plugin will attempt to automatically connect to that previously used host the next time you launch your project.

Setting up a model to animate

Hand/full body models need to be set up in a specific manner to allow for animation through MANUS Core. The guide below guides you through the steps needed to define the model. Added reading on our Skeleton system and DevTools can be found in their respective articles.

  1. Import the model you want to animate into your Unity project. If it's a full body skeleton, make sure it's a Humanoid Biped model.
  2. Place the model within the scene.

    alt text

  3. Select the root of the model's game object and add the Skeleton script as a new component. You can find it under Manus/Skeletons or by searching for Skeleton in the component menu.

    alt text

  4. Press the Setup nodes button. This function will automatically find all the transforms under the model, convert them into nodes, and set up their settings.

    alt text

  5. ‍‍Set the Skeleton Type option to the appropriate type based on what you intend to animate using MANUS Core:

    • For just the hands, set it to Hand.
    • For a full body model (including hands), set it to Both.
    • For a body-only model (without hands), set it to Body.

    alt text

  6. Press the Send skeleton to tool button to send the skeleton nodes to the MANUS DevTools application. This tool simplifies the chain creation process. Refer to our DevTools article.

    alt text

    Note

    This button will open the DevTools on the device hosting the MANUS Core that your plugin is connected to.

  7. In the DevTools application, Auto Allocation will try to automatically allocate the chains. This will attempt to automatically generate a chain setup. Verify that the auto allocation was effective using the animation controls, else adjust the assignment accordingly. Once satisfied send the modified skeleton back to Unity by clicking Send to plugin.

    alt text
    alt text

  8. In Unity, go to the Skeleton inspector and press Load skeleton from tool to load the modified skeleton sent from the DevTools.

    alt text

  9. Ensure that the Hand Motion Type is set correctly based on your desired tracking source:

    • IMU uses the gloves' orientation.
    • Tracker uses a tracker's orientation and position.
    • Tracker_Rotation_Only uses the tracker's orientation without its position.
    • Auto automatically uses tracker data if a tracker is installed; otherwise, it uses glove data.

    alt text

It's generally recommended to use the Auto setting to allow for the most flexibility in tracking sources.

  1. ‍‍Set the Targeted Data to specify the source the skeleton should get its animation data from:

    • User Data: Provide a User ID from the Manus Core Dashboard to animate the skeleton accordingly.
    • User Index Data: Specify the index of the user from the Manus Core Dashboard to animate this skeleton.
    • Glove Data: Provide the ID of the glove from the Manus Core Dashboard to animate this skeleton.

    alt text

  2. ‍‍After setting up the above parameters, the skeleton is now ready to be animated. When entering play mode, the skeleton should animate according to the chosen targeted data.

Note

Make sure you're no longer in the animation mode in the DevTools when reviewing the skeleton animation in Unity. The animation mode will override the skeleton's animation, this can also be used to your advantage to test the skeleton's animation inside Unity.

Interaction framework

The plugin comes with an interaction framework that allows you to interact with objects in your scene using the gloves. The framework is designed to be flexible and easy to use. The following article delves into how to set up the interaction framework.