Autodesk Maya: OptiTrack Insight VCS Plugin

Overview

The Insight VCS: Maya plugin is an Autodesk® Maya® plugin designed for live virtual camera work directly within the Maya® environment.

The Insight VCS plugin works in conjunction with Motive and the Insight VCS Controllers to provide real-time 6 DOF camera position, orientation, and virtual camera controls, including:

Insight VCS Features

Installation and Licensing

Supported Platforms

The Insight VCS Plugin for Maya works on the following platforms:

  • Autodesk Maya 2011®, 32-bit for Microsoft Windows®.

  • Autodesk Maya 2011®, 64-bit for Microsoft Windows®.

  • Autodesk Maya 2014®, 64-bit for Microsoft Windows®.

  • Autodesk Maya 2015®, 64-bit for Microsoft Windows®.

  • Autodesk Maya 2016®, 64-bit for Microsoft Windows®.

  • Autodesk Maya 2017®, 64-bit for Microsoft Windows®.

  • Autodesk Maya 2018®, 64-bit for Microsoft Windows®.

Installation

  1. [Maya] - Load plugin - Maya -> Window -> Settings/Preferences -> Plugin-In Manager -> InsightVCS -> Check

  2. [Maya] - Start plugin - Maya -> Window -> InsightVCS

Licensing

The VCS:Maya plugin requires a valid Insight VCS:Maya license to run. This license is managed by your OptiTrack server application (Motive) and should be installed in the same license folder as that application.

Please refer to your order confirmation and/or Quick Start Guide for specific licensing instructions. Additional information on licensing can be found in our Licensing and Activation FAQ.

Using the Insight VCS: Maya Plugin

The following steps outline the basic process for virtual camera work using the Insight VCS plugin within Maya®:

  1. Load a Maya scene

  2. Create any Maya cameras that will be controlled by the Insight VCS

  3. Connect to an OptiTrack data server for 6-DOF data

  4. Select or create a "Controller Profile", which controls how buttons and axes on the tracking controller are used

  5. Start laying down camera moves!

Connecting to Motive [Server]

Refer to the following step-by-step for bringing live mocap data in from an OptiTrack Motion Capture server application, Motive.

Connecting to the Mocap Data : Step-by-Step

[Motive]

  • Create a Rigid Body from you tracking controller's markers.

  • Be sure to orient your tracking controller down the -Z axis. This will be the camera's "Neutral" position.

For more information regarding streaming in Motive, please visit the Data Streaming wiki article.

Open the Data Streaming Pane in Motive's Settings window and set the following settings:

  • Enable - Turn on the Enable setting at the top of the NatNet section.

  • Local Interface - Choose the desired IP network address from this dropdown to stream data over.

    • Loopback

      • This is the local computer IP address (127.0.0.1 or Localhost).

      • Used for streaming data locally on the PC you are running Motive on that does not interact with the LAN.

      • Good option for testing network issues.

    • 192.168.0.1x (typical, but may be different depending on which interface is used to establish a LAN connection)

      • This IP address is the interface of the LAN either by Wi-Fi or Ethernet.

      • This will be the same address the Client application will use to connect to Motive.

  • Transmission Type

    • For streaming over a Wi-Fi network, setting the Transmission Type to Unicast is strongly advised.

  • Select desired data types to stream under streaming options:

    • Rigid Bodies - Enabled (required).

    • Skeletons - Optional for Skeleton tracking.

    • Markers (Labeled, Unlabled, Asset) - Disabled for HMDs (advised).

    • Devices - Disabled.

  • Skeleton Coordinates

    • Set to Local.

  • Bone Naming Convention

    • Set the appropriate bone naming convention for the client application. For example, if the character uses the FBX naming convention, this will need to be set to FBX.

[Maya]

  • Open the Insight VCS Plugin panel by selecting Window -> Insight VCS from the Maya main menu.

[Insight VCS Panel]

  • Set the IP address to match Motive's (i.e. 127.0.0.1 if running Motive and Maya on the same machine) using the Server Address Edit Box.

  • Click the Connected Button. If a connection was made, the green indicator light on this button will change to bright green.

  • Select the mocap source object from the Rigid Body Dropdown.

  • Select the Maya camera to be controlled using the Maya Camera Dropdown.

  • Click the Live Button to begin streaming data from the mocap Rigid Body to the Maya camera. If live data is streaming, the indicator light on this button will change to bright yellow.

You should now see your Maya camera moving within the Maya viewport:

Connection Settings

Virtual Camera connection settings are managed by the main interface tab on the Insight VCS plugin panel:

Controllers

The Insight VCS plugin supports any DirectInput compatible joystick or USB device. Controllers can then be configured to perform actions or control the camera using Controller Profiles.

Controller Profiles

Virtual Camera controls are managed by a Control-to-Event mapping system called the Controller Profile. The controller profile is configured in the Controller Tab. The Insight VCS plugin allows you to create and swap between multiple controller profiles, allowing you to create any number of custom button/axis configurations depending upon the scene, particular move types, different physical VCS controllers or HID devices, etc.

Profiles can be saved and then later swapped out using the Profile Dropdown. Profiles are saved into <VCS Maya install folder>\Profiles folder.

The VCS plugin ships with 2 default profiles:

  • The 2 controller VCS Pro (<VCS Maya install folder>\Profiles\VCSProDefault.xml).

  • The XBox based VCS Mini (<VCS Maya install folder>\Profiles\VCSMiniDefault.xml).

When the Insight VCS plugin is first launched, it will attempt to detect any compatible controllers. It will then attempt to match the detected controllers with an existing Controller Profile, beginning with the last used ("preferred") profile.

Profile Setup

The VCS plugin supports 2 types of controller inputs and 2 types of actions:

  • Axis Inputs / Actions: Axis inputs are analog inputs and represent the range of values. This range has been scaled to [0, 1000]. Axis inputs can be assigned to Axis actions. PTZ operations (Pan, Tilt, Zoom) are good examples of typical Axis Actions.

  • Button Inputs / Actions: Button inputs are the button inputs on the controller. These are “one shot” events that occur when the button is pressed. Timeline commands such as Play, Record, and Rewind are typical examples of “one shot” events.

Some Insight VCS controllers have a dial that is represented in the Axis list as a "Wheel". This is a special form of an axis, and can be used to modify existing actions, such as zoom speed, pan speed, and motion scale amount.

Some Insight VCS controllers have a "Button 7". This is an internal, reserved button, and cannot be directly accessed.

Insight VCS Profile Grid Columns

Action Parameters

Some actions have parameters that modify the way they operate. The following tables list the axis and button actions, and how the parameter value for that action is interpreted.

VCS controller - Axis Actions

*Curve Type: See explanation below for a definition of the supported curve types.

Curve Types

When mapping a controller thumbstick axis to an animatable camera parameter (pan, zoom), you have the option of specifying how the Insight VCS plugin should interpret controller axis movement as a standard animation curve. Instead of modifying the value over time, however, the motion curve modifies the value over the controller span, from neutral/center position (0) to maximum position (Max). The following diagram describes this relationship:

The VCS plugin offers the following built-in curve options:

VCS Controller - Button Actions

Virtual Camera Settings

The Insight VCS plugin has several properties that can be used to customize its behavior. The Settings Tab can be used to set these:

VCS General Settings

Maya Camera Settings

A Maya Camera controls how you see the 3D scene. Maya's Camera object allow users the ability to model real-world cameras, including settings such as Focal length, aspect ratio, film format, etc.

Refer to the Maya documentation for more information on Camera Settings.

Other Resources

Insight VCS Support and Supplemental Documentation