** FacialTrackerVamPlugin v0.1 **

DESCRIPTION
This receives a Vive Facial Tracker's face morph weightings sent by companion app FacialTrackerVamLink as messages thru UDP. 
It then maps them to facial morphs on an attached Person atom.


USING

*this assumes you have already set up FacialTrackerVamLink and its requirements*

1. Plug in your Vive Facial Tracker

2. Start FacialTrackerVamLink.exe (see its README for instructions)

3. Attach FacialTrackerVamPlugin.cslist to a Person atom 


CONFIGURING
By default, we will listen for messages on 127.0.0.1:27000
To change the IP or port, modify the IP or PORT constants in main.cs. These values should match FacialTrackerVamLink's config.ini. 


NOTES
The Facial Tracker only tracks lip, jaw and tongue movement. This means that characters can look weird as their mouth moves but their eyes and brows remain static (creepy doll effect).

Some possible solutions:
* use AcidBubbles Glance plugin to animate eyes and get a more natural look
* use the Vive Pro Eye for eyetracking (not a solution for me as I don't have a supported HMD)
* dynamically set eye and brow morphs to reflect mouth emotion (I might build this into a later release of the plugin)


PLANS
* Improve the mapping of face weights to VAM morphs to create a more realistic effect
* Add UI to allow users to do useful stuff


TROUBLESHOOTING
Check that FacialTrackerVamLink.exe is running and that both FacialTrackerVamLink.exe and your vam.exe are not blocked by your firewall. 


CONTRIBUTING
Contributions, forks, bug reports and suggestions welcome. 

To change the way that face weights are mapped to VAM, edit the mapper functions in MorphMappers.cs . If you need to reference new VAM morphs, they should first be added to DAZMorphLibrary.cs . 
