AvatarReady
Loading...
Searching...
No Matches
Inria.Avatar.AvatarReady.FacialAnimationFeatureCharacterCreator Class Reference

Facial animation feature - implementation for character creator. More...

Inheritance diagram for Inria.Avatar.AvatarReady.FacialAnimationFeatureCharacterCreator:
Inria.Avatar.AvatarReady.FacialAnimationFeature Inria.Avatar.AvatarReady.AvatarFeature

Properties

override Dictionary< ActionUnits, List< string > > ActionUnitToBlendshapes [get]
 
override Dictionary< Visemes, List< string > > VisemeToBlendshapes [get]
 
override List< Tuple< float, List< string > > > MicroExpressionBlendshapes [get]
 
override List< Tuple< float, List< string > > > BreathingBlendshapes [get]
 
- Properties inherited from Inria.Avatar.AvatarReady.FacialAnimationFeature
Dictionary< ActionUnits, List< string > > ActionUnitToBlendshapes [get]
 
Dictionary< Visemes, List< string > > VisemeToBlendshapes [get]
 
List< Tuple< float, List< string > > > MicroExpressionBlendshapes [get]
 
List< Tuple< float, List< string > > > BreathingBlendshapes [get]
 

Private Attributes

readonly Dictionary< ActionUnits, List< string > > actionUnitToBlendshapes
 
readonly Dictionary< Visemes, List< string > > visemeToBlendshapes
 
readonly List< Tuple< float, List< string > > > microExpressionBlendshapes
 
readonly List< Tuple< float, List< string > > > breathingBlendshapes
 

Additional Inherited Members

- Public Types inherited from Inria.Avatar.AvatarReady.FacialAnimationFeature
enum  Emotions {
  None , Happiness , Sadness , Surprise ,
  Fear , Anger , Disgust , Contempt
}
 
enum  Visemes {
  sil , PP , FF , TH ,
  DD , kk , CH , SS ,
  nn , RR , aa , E ,
  ih , oh , ou
}
 
enum  ActionUnits {
  NeutralFace = 0 , InnerBrowRaiser , OuterBrowRaiser , BrowLowerer = 4 ,
  UpperLidRaiser , CheekRaiser , LidTightener , LipsTowardEachOther ,
  NoseWrinkler , UpperLipRaiser , NasolabialDeepener , LipCornerPuller ,
  SharpLipPuller , Dimpler , LipCornerDepressor , LowerLipDepressor ,
  ChinRaiser , LipPucker , TongueShow , LipStretcher ,
  NeckTightener , LipFunneler , LipTightener , LipPressor ,
  LipsPart , JawDrop , MouthStretch , LipSuck ,
  LidDroop = 41 , Slit , EyesClosed , Squint ,
  Blink , Wink , LipCornerPullerRight = 121 , DimplerRight = 141
}
 
enum  MicroExpressionTypes { Continuous , Pulse }
 
- Public Member Functions inherited from Inria.Avatar.AvatarReady.FacialAnimationFeature
void SetBlendshape (string blendshapeName, float weight)
 Call this method every frame to set the Blendshape to the given weight. The weight is between 0 and 100.
 
void SetActionUnit (ActionUnits actionUnit, float weight)
 Call this method every frame to set the ActionUnit to the given weight. The weight is between 0 and 100.
 
void SetEmotion (Emotions emotion, float weight)
 Call this method every frame to set the Emotion to the given weight. The weight is between 0 and 100.
 
void SetViseme (Visemes viseme, float weight)
 Call this method every frame to set the Viseme to the given weight. The weight is between 0 and 100.
 
void SetViseme (float[] visemesWeights)
 Call this method every frame to set all the Visemes to their given weights. The weight is between 0 and 1.
 
override void InitFeature (AvatarReady avatar)
 Initialize the feature.
 
- Public Member Functions inherited from Inria.Avatar.AvatarReady.AvatarFeature
virtual void ResetFeature ()
 
- Public Attributes inherited from Inria.Avatar.AvatarReady.FacialAnimationFeature
float[] EditorEmotionsWeight
 
float[] EditorVisemesWeight
 
float[] EditorActionUnitsWeight
 
bool EyeBlink = true
 
bool EyeMicroMovement = true
 
bool BreathingMovement = true
 
bool FacialMicroExpressions = true
 
MicroExpressionTypes MicroExpressionType = MicroExpressionTypes.Continuous
 
- Protected Member Functions inherited from Inria.Avatar.AvatarReady.FacialAnimationFeature
virtual void AwakeData ()
 

Detailed Description

Facial animation feature - implementation for character creator.

Member Data Documentation

◆ visemeToBlendshapes

readonly Dictionary<Visemes, List<string> > Inria.Avatar.AvatarReady.FacialAnimationFeatureCharacterCreator.visemeToBlendshapes
private
Initial value:
= new Dictionary<Visemes, List<string>>()
{
{ Visemes.sil , null },
{ Visemes.PP , new List<string>() { "Mouth_Lips_Tight" } },
{ Visemes.FF , new List<string>() { "Mouth_Top_Lip_Under" } },
{ Visemes.TH , new List<string>() { "Mouth_Lips_Part" } },
{ Visemes.DD , new List<string>() { "Mouth_Top_Lip_Up" } },
{ Visemes.kk , null },
{ Visemes.CH , new List<string>() { "Tight-O" } },
{ Visemes.SS , new List<string>() { "Mouth_Bottom_Lip_Down" } },
{ Visemes.nn , new List<string>() { "Mouth_Top_Lip_Up" } },
{ Visemes.RR , new List<string>() { "Mouth_Bottom_Lip_Down" } },
{ Visemes.aa , null },
{ Visemes.E , new List<string>() { "Wide" } },
{ Visemes.ih , new List<string>() { "Dental_Lip" } },
{ Visemes.oh , new List<string>() { "Tight-O" } },
{ Visemes.ou , new List<string>() { "Tight-O" } },
}

◆ microExpressionBlendshapes

readonly List<Tuple<float, List<string> > > Inria.Avatar.AvatarReady.FacialAnimationFeatureCharacterCreator.microExpressionBlendshapes
private
Initial value:
= new List<Tuple<float, List<string>>>()
{
{new Tuple<float, List<string>>(80, new List<string>() { "Open" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Brow_Raise_Inner_L","Brow_Raise_Inner_R" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Brow_Raise_Outer_L","Brow_Raise_Outer_R" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Brow_Drop_L","Brow_Drop_R" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Brow_Raise_L","Brow_Raise_R" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Eye_Blink_L","Eye_Blink_R" } ) },
{new Tuple<float, List<string>>(20, new List<string>() { "Eye_Wide_L","Eye_Wide_R" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Eye_Squint_L","Eye_Squint_L" } ) },
{new Tuple<float, List<string>>(20, new List<string>() { "Nose_Scrunch" } ) },
{new Tuple<float, List<string>>(20, new List<string>() { "Nose_Flanks_Raise" } ) },
{new Tuple<float, List<string>>(30, new List<string>() { "Cheek_Raise_L", "Cheek_Raise_R" } ) },
{new Tuple<float, List<string>>(30, new List<string>() { "Cheek_Suck" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Cheek_Blow_L", "Cheek_Blow_R" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Mouth_Smile" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Mouth_Frown" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Mouth_Pucker" } ) },
{new Tuple<float, List<string>>(30, new List<string>() { "Mouth_Widen" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Mouth_Plosive" } ) },
{new Tuple<float, List<string>>(10, new List<string>() { "Mouth_Open" } ) },
{new Tuple<float, List<string>>(20, new List<string>() { "Mouth_Bottom_Lip_Bite" } ) },
}

◆ breathingBlendshapes

readonly List<Tuple<float, List<string> > > Inria.Avatar.AvatarReady.FacialAnimationFeatureCharacterCreator.breathingBlendshapes
private
Initial value:
= new List<Tuple<float, List<string>>>()
{
{new Tuple<float, List<string>>(30, new List<string>() { "Nose_Nostrils_Flare" } ) },
}

The documentation for this class was generated from the following file: