This component allows applying particular facial expressions to a character.
This component uses [Facial Activation Encoding System](https://imotions.com/blog/facial-action-coding-system/)(FACS) as a notation system for possible facial movements - activation units (AUs). Each AU has a value that characterizes to which extent the motion should be performed, akin to blendshapes/morph targets.
The facial expressions, or poses, are saved in `FACSExpressionsLibrary`, which maps an emotion of an enum type `Emotions` to an array of FACS values `FACSValue`.
`FACSValue` itself is a structure which contains:
- an integer value denoting the AU number
- the value associated with the AU
-`FACSSidedness` Side, which represents the side of the AU on the face (left, right or both)
There are 8 basic emotions stored in `FACSExpressionsLibrary`:
- Neutral
- Happiness
- Sadness
- Surprise
- Fear
- Anger
- Disgust
- Contempt
Additionally, there is also a `Custom` emotion, which allows to manually override and add values to some specified AUs.
To pick an emotion, set `SeletedEmotion` to appropriate emotion. This can be done in both blueprint and c++. Additionally, there are functions `SetFACSActionUnit`, which uses Custom emotion to change a value of a given AU, and `VHSetFACSValues` which adds an array of these AU values at once.
Important: this component requires a mapping `PoseAsset Mapping` for according character model type: `CC3` or `MetaHuman`.