Sirena - Student Short Film
When: Spring Semester, 2019 (Ongoing)
Where: Entertainment Technology Center, CMU
Roles: Character TD, Maya Tool Developer
Week 5, the 17th - 23th of March:
Its complete. Everything in the face (except for the eyebrows) is joint-driven. Eyebrows driven by 3 different blendshapes. Blendshapes pull the mouth wide and up as well.
This is the first time I've put together a facial rig and there are so many things I'd do differently with my next one. For one, the brows should also be driven by joints similar to how the lids have been set up. Need to look into sticky-lips setups and the ability for one lip/eyelid to push the other one with it on collision.
I have a fair idea of where I need to go from here, I feel. I'm asking the right questions.

Above: Facial rig being used to achieve different expressions.

Week 1, the 11th - 17th of Februaury:
I started off creating a joint-based facial rig, weight-painted to divide the head into the follwing sections:
  1. Top Head
    1. Left Socket
    2. Right Socket
  2. Bottom Head
    1. Jaw
I call this my global rig. I duplicated the mesh twice to create two more joint-based facial rigs on live blendshapes. I shall be referring to these as local rigs. Controls were added to the global rig to drive joints on the local rigs. Here's a video showcasing the current progress of the rig:

Above: Controls and deformation on the global face rig.

Above: Weight paints and jaw deformation for the global face rig.

The first local rig handles joints for the Nose, Chin, Cheeks, Ears and Mouth. All manually weight painted.

Above: Joints and weight paints for the 1st local rig.

The second handles the Eyelids (just the lower right eyelid for now). I will add joints under the Eyelids to counter the crease that forms from moving the lids. Joints for lifting the Cheeks will also be added to this local rig.

Above: Joints and weight paints for the 2nd local rig.

I've also been building quick tools for Maya using PySide and Python wrappers for MEL alongside the rig. Whenever I feel like a part of the rigging process can be automated, I script.
Above: Tool to automatically create parent controllers, locators and groups on top of selected objects. UI created using PySide.

For now the aim is to put the fundamental structure for the Facial and Body rigs together asap and to allow the animator to play with it and provide feedback while I add more functionality.