facial animation setup?


yes i have learn from paul neale dvd rigging tutorial
i suggest you to buy…
for the muscles bones i have you the strechy bones

I use dummys and a look at constraint on the bones and a position constraint on the end of the stretchy bones to make muscles.



hi everybody,
i want to use muscles for the face of my character so i need tutorials or some other kinds of guides about facial muscles, do you have any samples about it??
thanks in advance…


Ive just been reading up on FACs and some about n-space combinations - The math quite frankly is very very hard, not only to implementing it but just the abstraction. Its more akin to matrix transformation and complex geomtric math. But I think im starting to understand it (only took 3 or so months of not thinking) Im trying to understand this method because if broken down into simple terms can be used not only for blend shape type setups but also bone,muscle types too. Many thanks to DPK- this is where most of these ideas are coming from.(the guy’s a genius)

So I’ll start simply, if we have two targets: A and B and two weights associated with them [1,0] and [0,1]. This is not the usual standard blenshape method weight. Infact the weight is a vector in an n-space. And this n-dimension is comprised by the amount of weights. See its very very complicated to understand. What infact is happening is the regular association of weight to blendshape doesnt exist. But its made to look like it does because generally its a 1 to 1 association i.e you have the same amount of weights as target mesh’s.

You have a base i.e neutral, your targets and the weights - for instance 2 targets = 2 weights = ([1,0],[0,1]) also they dont have to be at 1.

So back to our two targets A and B and two weights - this gives us a n-dimension of 2. eg. [0,0] and because we have two targets our association is: ([1,0],[0,1]) now when we combine A and B’s weight like so, to give us a vector of: [1,1] we probably get a mess. And this is where the magic of n-space combinations work. We can associate a target to multiple weights. (or i suppose a vector sum of weights in a way)

If we associate a new target to [1,1] we now have a combination shape.

So to reiterate:

[li]We devise an n-space based on the number of weights (e.g the number of sliders) e.g 2n-space. Like a point 2.[/li][li]We associate a target (i.e blendshape) to a vector in this space eg [0.5,0].[/li][li]Combination shapes, in the standard sence dont exist. You just associating a target/fix to the combination vector of the weights.[/li][/ol]This makes the system amazingly powerful, i mean any slider can be combined with any other, the results in theory wont break. You just have to not think in the standard way of blendshape analogy. This vector thats built from the weights could drive anything - infact a bone or muscle setup.

Whats complicated though is acheive the final delta, something i need to think about. (hopefully not another 3 months) Ive been scribbling of post-its all day!


If i can work out the math, i’ll try and post my findings (hopefully wont go over your heads)



Hi eeks!
Just adding this in case anyone isn’t aware of it: my colleagues at the FIlmakademie led by Volker Helzle have worked out the FACS library into a free Maya plug-in. Check it out here: http://research.animationsinstitut.de/

There’s also a great overview of the FACS modules and micro-expressions.
They’re currently reworking elements to make it more easily edited.


Hi Dobermunk,

Yes I signed up to there site about a year or more ago - its very very interesting stuff. The FACs manual is a stunning peice of research - anyone interested in facial setups should check it out!



I"m actually in the process of converting this over to 3dsmax. Almost there.


Hi Refract,

Kinda same here, not so much software side. Just spent christmas reading papers on morphable dimensional space, vector space, linear algebra, euclidean space etc . Took a while understanding the math behind it - currently i’m working on an algorithm to encompass everything. Also it may have to exist as a plugin as dynamically building an n-space and working the rule based system for combinations on the fly may eat memory via plain scripting applications. Nice thing though is that im thinking in terms of pure math so the idea can be taken across applications.

Fac’s is a solid piece of research too - essentially im thinking in terms of non-breakability in any way you rig the face.



hi eek,
I’ve been following after this post for quite a while now and I have to congradulate
you man, you’ve come a real far way, thats amaizing how long it has been and you
dont loose your interest!
by the way what about the tutorial your promising for so long? its only a couple
of hours to write and you’ve been talking about it for years now.

on the last few days I’ve been researching the feeld of facial rigging quite allot,
and Ive found your technique the most elegant and interesting.

the thing is I work on Max and I usually work on prodaction with morph targets,
because its simple and doesnt take more then a few howrs to get the work done.
but now I was asked to come up with a quick facial solution for a new project
we’re working on, so I think I’ll give your technique a try.
I’ll be using a simplifide solution since I dont need that kind of quality and I have only
a few days for each face. I’ll try to write it as a script that build the rig like in face robot.
Hope to see some more prograss in the future and to finally see that Tut.:bounce:


it must’ve been 4 years since I first posted on this thread, come on man… make a tutorial already :scream: !


Hmmm… pretty interesting thread. Say, how much longer do you think it’s going to be before your done coverting it over to max? I used to be a Maya guy years ago but moved over to Max and am not comfortable with Maya anymore plus my current project is pretty far into development to switch without having to make adjustments to the pipeline.

Been using morphs for my characters and it’s getting to be a pain. I tried out some of the examples that have come out by people on this forum and think they are fantastic. I wish the people that said they are gonna make a tutorial would actually get going and make one. It’s been years guys.

I think it’s about time someone stepped up to the plate and delivered a possible home run for better facial animation.


Tutorial! Tutorial! Tutorial! Tutorial! Tutorial! Tutorial! Tutorial! Tut! Tut! Tut! Tut! Tut! Tut!:wip: :wip: :wip: :wip: :wip: :wip: :wip: :wip:


I have to jump in here on Eeks behalf. Why do you guys keep asking for a tutorial? The tutorial is in the thread. The guy tells you how he did it, why he did it and the resuts. Also shows you videos of how it is supesed to look like. The expressions, of how it works, and his thought process. This is the best tutorial ever. So please stop asking for a tutorial and filling this post with posts asking for a tutorial. Take the time and read the post he tells you how to do it. Let Eek use his time to explore and discover new frontiers, not ways on explaining how to connect nodeA to nodeB.


Here’s test of a rig using some similar techniques.

It’s basically a mask that can be adjusted to fit any face and requires very little weighting.
Only the primary controls are ready, and there are missing parts… It’s day 4 of a month long project.



Verry sweet how did you get the curves to keep volume and fallow the path? Expecially around the adams apple. What software did you use?And how did you connect them all?



On the adams apple theres the black curve. One end attached to the jaw, the other to the base.
The middle ot the adams apple curve is constrained to a point half way down the back curve and the envelope nulls jsut slide along with a percentage.

Theres no expressions or any fancy maths business going on. I can’t do maths, it’s just mechanical. this is where XSI is good. you can just make stuf without thinking about the mathematics.

To retain volume it’s just a sort of scaffolding all made out of curves. all of it’s visible there in the rig.
Theres quite a bit of hidden stuff on the face. ‘Tendons’ connecting certain parts to drive other parts - again, made out of curves.

The whole rig is 90% curves and curve constraints. probably about 500 going on. Surprisingly there’s no slowdown in XSI on my system.


Verry nice, in the words of Borat " I liiikke".


happy to see you here pooby, here is a link of my face rig, it’s also a curves rig but in a strict anatomical approach wich is inspired from the research of paul ekman FACS

Mind in potion


… and the link? :slight_smile:


Here’s a pic of the ‘final’ -ish version of my rig. I think it’s self explanatory what’s going on. :smiley: Yeah right… even I have some difficulty deciphering some of it now. I should have written some notes down instead of making it up as I went along.
Actually, this is half the rig - The XSI half. the other half is a displacement rig that’s applied in lightwave.


Okay, now I’m intrigued.
rig/animate in xsi - displace/render in LW…
transfer via PointOven?

The rig looks… err… complicated. Knowing your work though, I’m sure the results are fantastic…
Can you post some of the animation done with this?