Upload
gurpreet-singh-sohal
View
224
Download
0
Embed Size (px)
Citation preview
7/28/2019 Facial Rig
1/24
A muscle based face rig
Innovations report
Jan Erik Olsen
d1155694
BACVA3
7/28/2019 Facial Rig
2/24
7/28/2019 Facial Rig
3/24
Abstract
The report focuses on the creation of a facial rig based on a muscle system. A substantial part
of it will discuss the features of the cMuscle System by Comet Digital, LLC.
Introduction
The human face must be one of the most challenging subjects to replicate in arts. This is
because the face and the expressions it makes is such an important part of our communication
with each other. Understanding what other people feel is highly important to us, so as a result
we are able to detect very minute changes in a persons face. This also means that artists need
to be very skilled to reproduce a face and the desired facial expressions.
In computer graphics, most facial animation we see today is either based on shape animation
or on joints. This can produce superb results, but many times it can also look a bit stiff. In
those cases, a hint of jiggle and inertia could make the animation look more natural. The use
of a muscle system could be one way of improving this, and this project aims at finding ways
of using the features of one particular muscle system, the cMuscle system by Comet Digital,LLC, in a facial rig. For this project, I will use a model of a head that has been modelled for
my major project.
7/28/2019 Facial Rig
4/24
Facial anatomy
In order to be able to rig a realistic cg human head it is necessary to understand the anatomy
of a real life head.
It is important to understand the how the muscles act in a face, but the study of muscles can
also lead the modeller off the right track. On most of our body we have skeletal muscles,
which are used for moving joints. Skeletal muscles roughly produce two visible results: The
moving of a joint, and the changes of volume and firmness under the skin. For example the
hamstrings can move the lower leg, and we can also see if the muscle is flexed or relaxed
under the skin.
Most facial muscles however, produce a quite different result. Most of them originate from
bone on the scull, and insert into other facial muscles. Some connect directly into the skin,while others join up in nodes which are connected to the skin.
The visible results from facial muscles, i.e. facial expressions are seen mostly as the skin is
pulled in different directions. The flexing and relaxing of the muscles in the face is much less
visible than for example the skeletal muscles on an arm. So to produce facial expressions in
cg, it makes sense to concentrate on the wrinkles and folds of the skin and where facial
muscles are connected to the skin rather than the muscles themselves.
7/28/2019 Facial Rig
5/24
The rigging process
The rigging or set up stage basically means to prepare a cg model for the animation process.
For an animator to be able to do his or her job properly, the rig must provide good
deformation and have an intuitive interface.
There are many ways of deforming cg geometry, and as a result there are several approaches
to rigging with their different strengths and weaknesses. Most rigs use a combination of
several methods.
As mentioned, this facial rig is based on a commercial muscle system plug in for Maya called
cMuscle System by Comet Digital, LLC.
About cMuscle System:
The cMuscle System is a plug-in suite for Maya. Its not my intention to give a detailed
explanation on how the system works, but I will outline the main features to help the reader to
follow the rigging process. For detailed information about the cMuscle System, refer to:
http://www.cometdigital.com/cMuscleSystem.php
In my second year Specialist Project, I used the cMuscle System to build a rig with leg
muscles.
The cMuscle System uses a custom skinning solution that enables the objects supported by
the plug-in to interact with the skinned object. The most important of these objects are called
capsules and muscles.
The capsules are in essence Maya locators with a length and a radius, and act similarly to
regular Maya joints. These are rigid objects that can interact with the skinned object and are
used for muscle attachment. (Fig 1)
7/28/2019 Facial Rig
6/24
Fig 1
A basic muscle attached to two capsules.
Fig 2
Moving the capsule causes the muscle to bulge.
The muscles are in short regular NURBS surfaces controlled by a cMuscle deformer. The
deformer uses a hermite type spline to control the squashing and stretching of the muscle.
(Fig 2) The muscle can also be deformed by moving the spline control points, giving more
possible shapes for the muscles. (Fig 3)
7/28/2019 Facial Rig
7/24
Fig 3
Moving the control points of the hermite curve.
When a muscle is added to the system, it can interact with the skin in different ways. One way
is to paint sticky weights. This means that the skin will move with the muscle as if it was
glued to it. Another method is to pain sliding weights. This will cause the skin to only be
moved outwards from muscle, The effect looks like the muscle is sliding under the skin.
A very useful feature of the muscles is their ability to jiggle. This can help to make the rig
appear more lifelike, simulating the inertia of the face.
Building the rig
The most interesting part, and also the most time consuming, has been to figure out how to
make use of this muscle system in the face rig. As mentioned, to replicate real life facial
muscles would only make sense in special cases. Instead I looked at the different qualities of
the muscle objects, and how they could deform the face model.
As a basis for the face rig, capsules are parented together to form a base root, three neck
vertebras, a head capsule and a jaw. The skin of the model is weighted to the corresponding
capsules by painting weights. At this stage, the set up is just like a basic joint driven rig,
Muscles and other objects are later connected to it to add detail to the deformation.
In the sections below, I will discuss my solutions to placement of muscles. These do not cover
every possible face expression, but some of the issues where the muscle system can be
helpful.
7/28/2019 Facial Rig
8/24
Fig 4
The polygon head with a basic capsule rig.
Jaw / Chin
One common problem with a basic joint based cg rig is that theres nothing to stop it from
colliding with itself. This causes it to loose volume in certain areas, and the skin under the jaw
is a typical example. As we open our jaw and/or bend our heads downwards, the space
between the throat and chin will be smaller. This causes the skin, fat and muscles under the
chin to be forced outwards and bulge.
After looking at several ways of positioning and controlling muscles, I decided to place a
muscle with origin under the chin and insertion in the upper parts of the throat area. The
capsule at the origin is parent constrained to the jaw capsule, and the insertion capsule is
parented to the third (top) neck vertebrae.
As the jaw opens and closes, the length between origin and insertion will vary which is
measured and used to control the squashing and stretching of the muscle. This worked nicely
for the area directly under the chin, but the deformations on the side areas were not ideal. To
fix this, I added two more muscles running along each side under the jaw. With this, I had
better control of the bulging under the chin and jaw.
7/28/2019 Facial Rig
9/24
Fig 5
Three muscles acting on the skin as the head bends down.
Fig 6
The resulting deformation of the skin from the muscles under the jaw.
Another possible way of controlling this area would be to place a muscle like a band under the
chin. This would have the advantage of using just one muscle, which means its easier to
position and paint weights. Still, it would be harder to drive the bulging and flexing of the
muscle based on the jaw and head movement since it would not directly cause any change in
the length of its control spline.
7/28/2019 Facial Rig
10/24
The Nodes
A very important feature in facial anatomy is the nodes. The nodes are located just above
the angle of the mouth, one on each side and acts as a central connection point for several
muscles (nine in total). The most noticeable function they have is to allow muscles to pull the
corners of the mouth to the sides, up and down from this point.
Fig 7
The nodes are highlighted in red.
Illustration from Human Anatomy for artists, Eliot Goldfinger, Oxford University Press, 1991.
The functionality of the nodes can be seen as a good example of that a muscle based cg rig
does not have to be nearly as complicated as the real thing. It would not make much sense to
rig eighteen muscles just to move two nodes. Most of them do not influence the skin directly,
but the results of their actions are visible on the skin as they pull on the nodes. The most
visible exception is the orbicularis oris which is the muscle shaping the lips.
As I recognized the importance of the nodes in a real face, I decided to mimic this
configuration in the cg rig. I thought that many aspects of a face expression could be driven
by the positions of the nodes, and that it would in turn make the animation process easier.
In the rig, the nodes are represented by capsules. Although they do not directly influence the
skin, they are connected to most of the cg facial muscles which are in turn deforming the skin.
In the illustration (Fig 8) we can see the nodes and the cg muscles they are connected to.
These muscles and the nature of the connection will be explained in detail in later sections of
the report. Note that these are not necessarily direct representations of anatomical muscles.
7/28/2019 Facial Rig
11/24
Fig 8
The cg nodes are highlighted in red. The connected cg muscles are called:
1: Upper lip, 2: Lower lip, 3: Mouth angle furrow, 4: Nasolabial furrow,
5: Cheek, 6: Cheek Fat.
The Lips
Real life lips are shaped by the complex muscle Orbicularis Oris. It can be divided into two
major parts: The upper and the lower lip portions. These parts are furthermore divided into the
outer and red lip portions. As a whole it runs all around the mouth. As we can see from the
illustration (Fig 9), it is directly connected, or even a part of the nodes.
The real muscle is able to produce a number of complex shapes, so to reproduce this in cg is a
real challenge. I did a lot of experimenting with cg muscles before building the lips, and
ended up with this conclusion: The best way of representing the red lip portions would be to
place one cg muscle in the upper lip and one in the lower because this could be shaped very
close to the lip geometry. However, this would only make sense if I could accurately control
the muscles. Placing clusters on selected CVs on the NURBS muscle gave good local control,
but moving them did not produce any jiggle.
In contrast, moving the control points on the cMuscleSpline of the muscle does produce
jiggle. The system also lets the user choose how many control points the muscle is controlled
by. The control points can be rotated for even more fine control.
7/28/2019 Facial Rig
12/24
Fig 9
Orbicularis oris highlighted in red. The abbreviation oor (out) means
orbicularis oris outer portion and oor (RL) means
orbicularis oris red lip portion
Illustration from Human Anatomy for artists, Eliot Goldfinger, Oxford University Press, 1991.
Fig 10
The cg red lip portions seen from behind. Note the rotated
control points.
7/28/2019 Facial Rig
13/24
In the final rig the red lip portions of the muscle is implemented with two cg muscles. (Fig 10)
They have five control points, three of which are controlled directly from an animation
interface. Moving and rotating the control points gives accurate control of the lips. A cluster is
also added on two CVs on the bottom part of the upper lip to enable the animator to give it a
flatter shape when needed.
To control the region between the lips and the nose, three flat muscles was added. (Fig 11)Their lower endpoints are point constrained to the control points of the upper lip, making
them expand and contract with the movements of the upper lip.
Fig 11
Frontal view: The red lip portions and three muscles
representing the outer portion of the upper orbicularis oris.
Fig 12
The deformed cg lip.
7/28/2019 Facial Rig
14/24
Nasolabial furrow, mouth angle furrow and the cheeks
The nasolabial furrow is the skin crease that runs from the wing of the nose downwards and
outwards and ends close to the node. It is a very distinct facial feature, and marks a clear
border between the area around the mouth and the fat pads of the cheeks. (Fig 13)
The mouth angle furrow is a short fold running downwards and outwards from the corners ofthe mouth. The tear bag is in short the tissue between the eyes and the cheeks.
The area between the nasolabial furrow and the tear bag of the eyes is commonly called the
cheek, and it holds a substantial amount of fat tissue. When we smile, the nodes and the lower
parts of the nasolabial furrows are raised and pulled backwards leaving less space for the
cheeks. The result is that the cheeks are compressed and bulge.
Fig 13
Red line: Nasolabial furrow
Blue line: Mouth angle furrow
Green line: Lower edge of the tear bag
For the cg model, I needed a way of reproducing the creases that appear as the nodes pull up,
back or downwards. As I studied my own face, I noticed that the change in the nasolabialfurrow, the mouth angle furrow and the cheek was caused by the position of the nodes. Also,
that the creases seemed to appear because the nasolabial furrow and the cheek tissue traveled
less distance than the nodes.
To recreate the crease effect in cg, I placed long and thin muscles along the nasolabial furrow
and the mouth angle furrow and connected their mid control points to the node with point
constraints.
7/28/2019 Facial Rig
15/24
By also point constraining these control points to a non moving capsule (relative to the
nodes), the movement of the control points could be weighted between moving 100% with the
nodes, and not moving at all.
Fig 14
Default node position. The node is highlighted in red. Other muscles, 1: Upper lip,2: Lower lip, 3: Mouth angle furrow, 4: Nasolabial furrow, 5: Cheek, 6: Cheek Fat.
Fig 15
Node is translated backwards and up. The node is highlighted in red. Other muscles,
1: Upper lip, 2: Lower lip, 3: Mouth angle furrow, 4: Nasolabial furrow, 5: Cheek,
6: Cheek Fat.
For the increasing volume in the cheeks as the node rises, I placed a large muscle (muscle nr 6
in fig 14 and 15) with origin under the eye and insertion at the node.
The amount of translation in all axis received from the node to the midpoints of the mouth
angle furrow (muscle nr 3) is 50%, the nasolabial furrow (muscle nr 4) receives 50% and the
cheek fat (muscle nr 5) receives 40%. The cheek (muscle nr 6) receives 100% of the x- and y-
axis translation, but 0% in the z-axis which is forwards and backwards. Disconnecting the z-
axis fixed the problem of volume loss in the cheeks as the node translated backwards.
7/28/2019 Facial Rig
16/24
Eyes and eyebrows
The eyes and eyebrows are involved in most of the expressions we communicate. With the
feeling that I should not limit the possibilities for the animator at the rigging stage, I made a
set up with a lot of control left for the animator.
With the set up for the lips in mind, the eyelids were rigged in a very similar way. (Fig 16)
One muscle is used for each lid, and both muscles join up at the corners of the eye where they
are connected to the same capsule. The muscles have five control points each. At the
endpoints they are connected to static capsules, and the three in the middle are parented to
capsules which are in turn parented to Maya joints. The joints are controlled from the
interface using set driven keys.
Fig 16
The muscles used for the eyelids and the eyebrows.
7/28/2019 Facial Rig
17/24
Fig 17
To the left: The eyebrows and eyelids. Note the 6 control points in each brow.
To the right: The deformed left brow.
For the eyebrow deformation, I made a muscle shaped as illustrated in Fig 16 and 17 with
origin close to the middle of the forehead and insertion at the side of the eye. This shapedeveloped from looking at how eyebrows move, what wrinkles they produce and where the
muscles are connected to the skin.
The bend from the origin to the more horizontal part of the muscle was chosen to make it
easier to produce the shape the brows make when frowning. The horizontal part is roughly
where the skin is attached to the muscles. This can be tested by frowning or raising ones
brow, and with the fingers find what parts of it that can still be moved. The curvy part of the
cg muscle at the insertion point is not indicating muscle attachment, but leads to the area
where the brow influence fades. Thus it makes the skin in this area move in the right
direction. The cg brow muscles have six control points which all receive direct control from
an interface.
7/28/2019 Facial Rig
18/24
Interface
A cg model with good deformation is very important in the production of an animation, there
also has to be an intuitive interface for the animator to use. It would be very cumbersome to
move things around at the component level, so the components need to be connected to
control objects.
Fig 18
Before looking at the control objects, Id like to name some important capsules in the rig.
The numbers in fig 18 represent the following capsules:
1) Neck12) Neck23) Neck34) Head5) Jaw6) JawHinge7) Root
The Root capsule is the top parent of the whole rig. Selecting and moving this will moveeverything.
The Head capsule is the parent of everything above the neck including the jaw and all the
muscles.
The Jaw capsule is parented to the JawHinge which in turn is parented to the Head. I will refer
to the Jaw and JawHinge capsules simply as the Jaw in the following description.
7/28/2019 Facial Rig
19/24
7/28/2019 Facial Rig
20/24
Fig 20
The controller objects numbered.
The controller objects are shown in Fig 20. The numbers represent the following objects:
1) Node controller:
The node capsules are parent constrained to the node controllers. Translating and rotating this
object moves the node capsules by the same amount. The nodes movements in turn control
other objects as discussed previously.
The node controllers are parent constrained to two objects called mc_left_node_parent and
mc_right_node_parent. The reason for this set up is that the node parents receive
translation to keep the corners of the mouth in the middle of the Head capsule and the tip of
the Jaw. They are parent constrained to both the Jaw and the Head with 50% weight on each.
Practically, this means that when the Jaw moves, the node parents move, the node controllers
move, and the nodes themselves move. The advantage is that I can use the node controllers
still have their original values and can be used to move the nodes from this new position.
2) Jaw controller:
The Jaw is controlled by this object with set driven keys. Translation in the y-axis rotates thejaw, which is parented to the Head capsule, causing the chin to go up and down. Translation
in x-axis and z-axis translates the jaw in the same axis respectively.
7/28/2019 Facial Rig
21/24
3) Lip controllers:
The lip controllers consist of a cube and a circle. The cube translates the corresponding
control point on the lip muscle spline curve via a parent constraint. The curve rotates the same
points using an orient constraint. Having both rotation and translation on the cubes did not
work properly with any of the available constraints or with parenting.
4) Upper lip raiser:
This object is connected to a cluster on the upper lip with set driven keys. The cluster is the
parent of two CVs under the lip. This enables the animator to make the upper lip flatter.
5 and 6) Eye lid controllers:
These objects are opening and closing the eyelids by controlling the joints the eyelid muscles
are connected to. Object nr 5 controls the lower lid, and nr 6 controls the upper. Translating
these controls in y-axis rotates the connected joints through set driven keys.
7) Eyebrow controllers:The cubes that lie on this curve directly control corresponding control points on the brow
muscle spline in all axis with parent constraints. This gives full control to the animator, but
also the responsibility not to shape impossible brow shapes.
8) Head controller:
The Head and the three Neck capsules are controlled by an IK spline handler. Each CV on the
IK spline hander curve is parented to a cluster. The cluster at the Head capsule is point
constrained to the Head controller making it able to bend the neck in all directions when it is
translated.
The z-rotation of the Head capsule is in addition orient constrained to the Head controller, ineffect overriding the rotation in this axis from its parent (Neck3) This makes the character
able to look up and down without bending the neck, and also to bend the neck without
rotating the head.
The twist attribute of the IK spline handler is directly connected to the y-rotation of the Head
controller, letting the character turn his head.
7/28/2019 Facial Rig
22/24
Critical analysis
In the process of making this rig, I have used the muscle objects in every deformation in the
face. For the purpose of this project I feel that was justified, because I wanted to know how
well the system performed. In a commercial setting on a tight budget, I would have used
blend shapes in areas where there were little need for jiggle and inertia.
In some cases I thought the system worked very well, like in the lips. I was able to shape the
muscles close to the geometry of the model and the controls gave a wide variety of possible
lip shapes. In the example of the eyebrows, the muscles were placed at the areas they would
influence, but with no restrictions. This made it easy to break the rig, and create shapes that
did not look natural. Even if it is very possible to make unnatural poses with the cg lips too, it
is easier to see when you are doing something wrong than with the brows.
A similar problem occurs with the node control. For example when a person smiles, the real
nodes are pulled to the sides, backwards and upwards. In the cg model, the nodes can bepositioned anywhere while only a few positions are natural.
There are ways of improving this. If the control objects in the interface lay on a surface
similar to the face model, this would be a good guide for the animator when moving the
points. If could be purely a visual aid, or a scripted set up that didnt allow the controllers to
move outside a given area.
Ideally, to get the best impression on the quality of the deformations using this system, I
should have experimented more with other rigging methods. As it is highly time consuming to
test and decide the best possible use of a muscle in a given area, I had to prioritise building
the muscle rig.
One area that I could not effectively rig just using this muscle approach was the forehead.
When the brows are raised, the forehead receives roughly horizontal creases, while a frown
produces vertical or radial wrinkles. The cMuscle System allows the user to paint wrinkle
maps to control where wrinkles should occur. This could be a possible solution to this
problem, but my initial tests using this method were not satisfactory so I left the idea.
I further looked into the possibility to use blend shapes in conjunction with the muscle
system, and discovered that it worked very well as long as the blend shapes were evaluated
before the muscle system.
7/28/2019 Facial Rig
23/24
Conclusion
A major part of this project has been looking into out how to make use of a muscle system in
a face rig. In many cases I did not mimic real life muscles, but rather used the cg muscles to
preserve volume and simulate inertia in the face. In other cases the muscles proved to be a
powerful tool in controlling difficult areas in the face, most notably the lips.
Building a facial rig based on a muscle system does not seem to be something many people
have attempted. Searching for examples on the Internet gave very few results. Well into the
project, I discovered that many people with rigging experience actually do not recommend
taking this approach to facial rigging. Michael B. Comet who wrote the muscle system of
choice is one of them. Link to this discussion on cgsociety.org:
http://forums.cgsociety.org/showthread.php?t=304707
One common argument is that the real life muscle system in the face is so complicated that
cg technology still is not at the level required for building a cg muscle face simulation. As Igathered information about face anatomy, I discovered that even if the real life muscle setup
is very complex, the results they produce do not have to be as complicated.
Building a facial rig which exclusively uses muscle simulation is probably not the most
effective approach, but using muscle systems together with other deformation methods gives a
very powerful toolset for creating convincing animation.
7/28/2019 Facial Rig
24/24
Images used in this report
Front cover:
Render by Jan Erik Olsen
Fig. 1, 2, 3, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20:Screen shots from Maya.
Fig. 13:
Picture by Jan Erik Olsen
Fig. 7, 9:
Illustration from Human Anatomy for artists,
Eliot Goldfinger, Oxford University Press, 1991.
References
Human Anatomy for artists, Eliot Goldfinger, Oxford University Press, 1991.
cMuscle System Documentation, included with the plug-in. http://www.cometdigital.com