For all technical and account support regarding the Live Client for Unreal, please contact Glassbox: helpme@glassboxtech.com

 

Basics

The Live Client for Unreal plugin developed by Glassbox is a Client plugin for Faceware Live Server. The plugin is responsible for connecting to Live Server and parsing the animation information that Live Server streams. The plugin then makes these values available for use in driving a character (or, any object you choose) within Unreal Engine.

 

Character Setup

So what does a character need to work with the plugin? At the most basic level, a character with a single blend shape will be all we would need to get started.

 

Note: It is possible to drive a character that uses only joints or bones for its rig within Unreal Engine, but depending on your character rig it may be much more complicated. For this reason we recommend using blend shapes, as they provide a simpler interface with your character rig in the engine.

 

 

Here we have our character. It's got numerous Morph Targets covering the majority of the primary shapes that Live Server outputs. You will need to export your character from whichever 3D application you’re using in FBX format, making sure to include your blend shapes. Once you’ve imported your FBX containing your character with Morph Targets (blend shapes), you should find a Skeletal Mesh in your content browser:

 

 

This Skeletal Mesh should, when opened, displays the Morph Targets that were imported when you select Mesh from the menu at the top. You can see here that after exporting as an FBX from your 3D application and importing your character in Unreal, you can inspect the Morph Targets on your character in Unreal engine, and manipulate them.

 

The best place to learn about the Unreal Engine FBX pipeline is from the source:

https://docs.unrealengine.com/latest/INT/Engine/Content/FBX/

 

Once you’ve got a character in engine, with Morph Targets we can manipulate, it’s time to set up our character for animation.

 

Character Setup / Blueprint Setup

 

Now that we have a Skeletal Mesh with Morph Targets, the next step is to create a blueprint from this Mesh so we can begin to drive these Morph Targets with Animation Values coming from Live Server.

 

From your content browser, drag your Skeletal Mesh into the scene. You can see in the details panel that there is no blueprint attached to your Skeletal Mesh Actor:

 

 

To add a blueprint to your Skeletal Mesh Actor, select the Add Blueprint/Script button and name your blueprint appropriately. From here the Blueprint Editor will open.

 

Find the Components Panel, generally on the left hand side, and click the Add Component button. Search for the Faceware Live Component and Add it:

 

 

The Faceware Live component is what allows us to access all of the functionality of the Faceware for Unreal plugin. If you select the component and examine the Details panel, you will find the Configuration section.

 

Here we will need to add the IP address of Live Server and the Port Number we’ve chosen to use. Check on ‘Editor Live Stream’ in order to preview animation in your Editor, and Connect on Begin Play to automatically connect to Live Server when the scene/game/project is started.


 

From here, we will be working in the Event Graph of our new Blueprint. With the Live Component configured, we can begin to work with the data coming out of Live Server.

 

To start, we’ll need to drag the Faceware Live Component into our Blueprint:


 

 

From there, drag out from the pin and search for the ‘shape points’ variable:

 

 

Shape Points is a data structure which contains all of the animation values streaming from Live Server. To make good use of this data, we need one more node. Drag the pin from Shape Points and search for Break FacewareLiveData:

 

 

These pins all represent the Animation Values, from 0.0 to 1.0 that Live Server streams. These are Float values, and from here we will use these floats to drive our Morph Targets. We do that by dragging off the pin for a shape of our choice, and connecting that to the ‘Set Morph Target’ node:

 

 

What we see here is our Set Morph Target node. The Target pin is connected to a reference to our Skeletal Mesh. In the Morph Target Name, we’ve added the name of the particular Morph Target we want to drive, and we’ve connected the Value pin to our Jaw Open pin on the Break FacewareLiveData node.

 

Finally, and most importantly, we’ve drawn a connection from the Event Tick execution pin to our Set Morph Target node.

 

Now we compile the blueprint using the compile button, and we’re ready to see animation.


 

Running the Scene

 

Minimize your Blueprint, and find your way to the main viewport. At this point, if you’ve set up your Port and IP settings properly, and Live Server is streaming data, you should be able to press the play button and see your character animating the shape or shapes you’ve set up:

 

From here, the next steps for character setup are to add any additional primary shapes in your character blueprint, and work on tweaking your results, which is covered in our section on Motion Logic.

 

Create your own Knowledge Base