Setup
Before the character can be rigged a quick setup has to be performed, to register the geometry and shape of the given character. Perform the setup with care before moving on to the next steps.
- Register Geometry - Head or body geometry that holds the face
- Assign Vertex Groups - Main, eyes, teeth, tongue via vertex selection
Warning
Make sure you read through the Prepare Geometry section.
Workflows
Depending on your individual goal, you can choose to display only relevant workflow tabs.
Workflows ALL, RIG, MOCAP
1. Register Geometry
The facial objects that are supposed to deform need to be registered in this step. Select All Objects that make up your characters face and hit the Register Face Objects button! Depending on the composition of your character model, you might have to register them one at a time or all at once.
Register all objects that encompass the facial meshes. Mesh composition might be different on your character.
Object Mode
You need to select an object of type mesh in the active scene and be in Object Mode!
2. Assign Vertex Groups
In this step we will specify important facial parts, by assigning the associated vertices. The vertices are stored in vertex groups in the object data tab. Please read on below to learn details about the individual groups and how to assign them effectively!
Assign Eyeballs
How To Assign
(Object Mode) Select the object > Click the respective button.
(Edit Mode) Select a subset or all the vertices > Click the respective button.
Quickly assign all vertices of a selected object by assigning a group in Object Mode.
Selection Shortcuts
Quick selection shortcuts:
A Select All
L or Ctrl L Select Linked
Ctrl +/- Grow/Shrink Selection
More
Check the operator options! It can be pretty useful to select linked geometry based on assigned materials or UVs.
2.1 Mandatory Groups
The rigging and weighting workflow might not be finished successfully when these vertex groups are not assigned properly.
Main Group
Purpose:
The most important group! It is used as the target surface in the Landmarks Projection and for generating the basic automatic weights layer in the binding operator.
Geometry:
This group should consist of one connected surface. It does not matter if your face geometry is connected to the skull or even the whole body. Simply assign the adjacent vertex island. (face, skull, body, skin)
In case the teeth, tongue or eyelashes are linked to the main surface, you can simply overwrite these groups by assigning the respective group after the main group.
Examples:
Main Group. All linked vertices in the main face mesh. [Shortcut: L]
Example Images display only the main group.
Note
It is no problem to assign other groups within the same object. If you don't assign the main group at all, Faceit will try to automatically assign the main group to the first object in the registration list (during Binding). You will be notified during binding if that process failed.
Eyeball Groups (Left and Right)
Purpose:
The Eyeballs are used for accurate bone placement. Faceit will assume the registered geometry to be of a spherical shape and find the center of that object on the Z-axis. That ensures that half-spheres are compatible too.
Geometry: Spheres or half-spheres. If the eyeballs don't exist, then the cornea or similar round objects would work too. The eyeballs should live in individual vertex islands.
Assign Eyeballs
Eyeball Placeholders
If the eye geometry does not consist of spheres, it might be a good idea to register spheres as eyeball placeholders. This ensures accurate bone placement. The actual eye-geometry can then be registered as other eye geometry and will be bound correctly.
2.2 Optional Groups
Tip
All assigned groups can both be connected to other meshes or live in a single vertex island. Simply assign a sub-selection of any vertex island in a registered object and it will be weighted properly. Faceit will automatically smooth weights along assigned edges.
Optional groups are used for bone placement and/or accurate bind weights. Assigning these groups can greatly increase the quality of the bind weights.
Other Eye Groups (Left and Right)
Purpose:
Assigned vertices will be weighted only to the respective deform eyebone. Assigning this group has no effect on bone placement.
Geometry:
Pupils, Iris, Highlights, smaller eye parts...
Teeth Groups (Upper and Lower)
Purpose:
Geometry that should deform rigidly along with the teeth/jaw. This group is used both for placement of the teeth bones and for the weighting. Any vertices assigned to either group will be weighted only to the teeth deform bones.
Geometry:
Upper & Lower Teeth, Gum, Mouth Interior...
Example:
Assign lower teeth group in main object.
Tongue Group
Purpose:
The tongue geometry is used to determine the placement and weighting of all tongue bones. If this is not assigned to any registered object, the tongue bones won't be generated at all.
Geometry:
Tongue
Assign tongue group in main object.
Eyelashes Group
Purpose:
Geometry that will only be weighted to the lid bones.
Geometry:
Eyelashes, Eyeshells, Tearlines...
Rigid Group
Purpose:
Geometry that should not deform at all. It can be used to define static areas of the skull, although Faceit should do a decent job of automatically removing weights from these areas.
Geometry:
Hardsurface objects, like jewelry or cyborg stuff.
2.3 Secondary Geometry
Other objects might be part of your character, like beards, eyebrows and other facial hair. They do not need to be assigned to any group to be weighted properly properly. Faceit will handle everything automatically.
Geometry:
Beards, Eyebrows, Tearlines,...