How to set up Facial Morph Targets for your avatar.

These morph targets are used by ARKit and Webcam for Face Tracking.


Model Requirements

kemorig uses the standard 52 "ARKit" shapes for face tracking. Webcam tracking, while not actually ARKit, uses a subset of the same morph targets.

Your model must implement morph targets (aka blendshapes or shapekeys).

kemorig uses the standard 52 “ARKit” morph targets. See the following list: (NOTE: these are the exact case sensitive names kemorig uses):

EyeBlinkLeft
EyeLookDownLeft
EyeLookInLeft
EyeLookOutLeft
EyeLookUpLeft
EyeSquintLeft
EyeWideLeft
EyeBlinkRight
EyeLookDownRight
EyeLookInRight
EyeLookOutRight
EyeLookUpRight
EyeSquintRight
EyeWideRight
JawForward
JawLeft
JawRight
JawOpen
MouthClose
MouthFunnel
MouthPucker
MouthLeft
MouthRight
MouthSmileLeft
MouthSmileRight
MouthFrownLeft
MouthFrownRight
MouthDimpleLeft
MouthDimpleRight
MouthStretchLeft
MouthStretchRight
MouthRollLower
MouthRollUpper
MouthShrugLower
MouthShrugUpper
MouthPressLeft
MouthPressRight
MouthLowerDownLeft
MouthLowerDownRight
MouthUpperUpLeft
MouthUpperUpRight
BrowDownLeft
BrowDownRight
BrowInnerUp
BrowOuterUpLeft
BrowOuterUpRight
CheekPuff
CheekSquintLeft
CheekSquintRight
NoseSneerLeft
NoseSneerRight
TongueOut

You can find various references online for how to author these. Here are a few:

Morph Target Naming Convention

Your model’s morph targets do not have to match the exact names above. However, it is good practice to name closely to the list, which will help auto-detction find your morph targets.

Do I Need All 52?

No. Any missing morph targets will simply not play, and the rest will work.

In the mapping asset we’ll make below, you can also map one of your model’s morph target to multiple expected ARKit names.

Obviously, if you don’t implement all 52, the final look may suffer.

Webcam Morph Target subset

Webcam Tracking uses a subset of the full list above.

For Webcam tracking, you can choose to set up all morph targets, or just the following subset. Whatever morph targets the tracking finds, it will apply:

EyeBlinkLeft
EyeWideLeft
EyeBlinkRight
EyeWideRight
JawOpen
MouthSmileLeft
MouthSmileRight
MouthShrugLower
MouthShrugUpper
BrowDownLeft
BrowDownRight
BrowInnerUp
BrowOuterUpLeft
BrowOuterUpRight