Live Client for Unity

Brian Genna -

After importing the Faceware Live Client for Unity package you're almost ready to connect to Live Server and see your real-time facial animation data that is streaming from Live Server.  There's just a few easy steps we need to complete first. 

*Note - You'll need to be streaming data from Faceware Live Server in order to see animation in Unity.  Need a free trial?  Here you go: http://facewaretech.com/products/software/free-trial/

Step 1: Character Setup

Each character you use will need to have a 'Character Setup' file.  In Unity, this is a .JSON file we create with the Faceware Character Setup tool.  You only need to build this file once and you'll load it into the Live Client component each time you want to stream animation onto this character.

Adding Controls

  1. Load your character into your Unity scene.
  2. Open the Character Setup window by selecting "Window" -> "Faceware" -> "Character Setup"
  3. With the Character Setup interface open you're now ready to create a Character Setup file for your character.  There are two steps involved: Control Setup and Expression Set.  The first step involves adding the controls that you'd like animated by Faceware Live.
  4. First, select all of the objects in your scene that will be animated.  This can include any object with blendshapes or transforms (joints, meshes, control curves, etc.).  With your objects selected, click "Get Selected Scene Objects."  This will put all of your selected objects' attributes in the menu on the left of the interface.  Next, check the box next to all of the attributes you'd like to add and then click "Add Controls."  Your controls are now added to Control Setup.

Expression Set Creation

Now that your controls are added, the second step is to make your Expression Set.  This is where you create facial poses to map how the Faceware Live animation will look on your character.  

  1. Starting in your facial rig's default, neutral pose, click 'Save Pose' on the 'Neutral' expression.  This is very important because it's the basis for all of your other Expressions.
  2. With Neutral set, now continue down the list posing each Expression with the controls/objects you've added to your Control Setup list.  For each expression, make sure to click 'Save Pose'.  To view one you've previously made, click 'Show Saved'.  

*Note - When posing your Expressions, feel free to mix/match and use blendshapes, transforms, or any combination of the two; just be sure that whatever you use is added in your Control Setup list.

*Note - Make sure when you create each Expression that you start from the 'Neutral' pose so you only add what's necessary.  To do this easily, click "Reset Character to Neutral" before starting each new Expression.

Saving your Character Setup File

Finally, save your file by clicking 'Save As...".  Make sure to save it somewhere in your Unity project so that the Live Client script can access it when the game is running.

 

Step 2: Setting Up Your Live Client

Follow the steps below to setup your Live Client component and get started streaming your Live Server facial animation into Unity.

  1. Load your character into your Unity scene.
  2. Select or create a new Game Object that will hold your LiveClient component.  So that you can manage your Game Objects easily, this can be any Game Object.  It does not need to be an object related to your facial rig.
  3. With the Game Object selected, in the Inspector click "Add Component" and select the "LiveClient" script from the list.
  4. Enter the server hostname and port from Faceware Live Server.  Drag and drop your Character Setup file into the 'Character Setup File' object field.
  5. Check the box next to 'Connect to Live Server On Play'.  This means when you 'Play' your Unity scene, it will connect and start running facial animation.
  6. To test and see your facial animation, select 'Play' in your Unity scene.

 

Recording Your Real-time Facial Animation

At this time, the Live Client for Unity does not record animation.
 
 

Streaming Multiple Characters Simultaneously

It's simple to stream multiple characters simultaneously.  Simply create another instance of the Faceware Live Cient component in Unity (use another GameObject to avoid any conflicts) and repeat the instructions above.  There is no inherent limit on how many characters you can stream at once; it's dependent on Unity and the specifications of your PC.  We have seen six actors streaming in at once with no problems.
 
*Note - It is not recommended to run more than one instance of Live Server on the same PC.
 

Troubleshooting

  • I can't connect to Live Server!
    • Check to make sure the Server Address (IP address) and Port of Live Server are correct.
    • Check to make sure the machines are on the same network and can ping each other.
    • Check to make sure you have loaded a Character Setup file.
    • Restart Unity and Live Server to make sure there are no broken connections possibly causing issues in Windows.
  • It says I'm connected but my character is not moving!
    Make sure you've loaded the correct Character Setup file and that you've completed your Expression Set
  • My Facial Rig/Character can't make some of these Expressions in your Character Setup process.
    If your rig can't make a certain Expression, you can leave it blank and it will be ignored during animation.
Have more questions? Submit a request

Comments

this.location="http://support.facewaretech.com"
Powered by Zendesk