View Full Version : facial animation setup?

Pages : [1] 2 3 4

09 September 2002, 05:35 PM
are there any sites out there that shows how to set up a face for animation or does anyone just care to explain


09 September 2002, 10:15 AM
there are so many ways to do that its not even funny or fun for that matter i recomend buying a book on what ever 3d program your useing and start with the way they show you

09 September 2002, 10:36 AM

Will post version when finished.

Got to Implement nose, eyes, eyebrow controls + fat, waddle controls.


09 September 2002, 08:50 PM
Basically, ive been trying to do facial setups for a long time. Bones, morphs etc dont really give me the freedom i want, and can also lose volume in the face. So i built my own setup, based on the muscles of the face. Ive got 14 controls in the face which give me about 196 combinations. And 8 controls in the eyebrows about 64 variations. The cool thing about it you can give nuance like talking out the corner of your mouth. Ill post some pics, and and version soon if anyones intrested.


09 September 2002, 08:20 AM
please eek, do that. usually at work i use only blends, but now are this new characters, and the faces are so deformed. i'll need probably a hundred blend for getin' that. and i was thinkin' to go for a cluster network.

09 September 2002, 01:44 PM

What software do you use, this versions in max 4, Maya version soon hopefully.

Here it is:

Right-click save target as:


p.s you control it using the nulls, jaw not implemented yet.

09 September 2002, 08:44 PM
Added eye and blink controls.


09 September 2002, 07:11 PM
10x, eek.
i'm a maya user.
those chars will be animated by someone else, so i try to have all the contols on a puppet or a locator (easier for aminators).
do u have any thoughts about driving the clusters and getting the expresions,except driven key?

09 September 2002, 08:31 AM
This is the same problem im having. My system basically has vertices linked X form (clustered) onto paths, which bezier points are also constrained positionally between nulls. What you want is to put your clusters in a state of expression, moved into one. You dont want them locked into an expression because you wont be able to tweek them.

You need to design a neutral state, so every clusters trans/rot is zero'd out. Then to make expressions. Drag the poisition data onto the shelf as mel so you click the mel. And it goes into the Expression. Theres still serious problems with this:

Knowing where the clusters are in world space!(kind of makes it explode!)
Also no blending ability!

Most of my clusters are on paths which means when i record ther e positions for shelf macroscripts(MEL) it only records the pecentage, it doesnt rely on positional data.

but i still have the problem of blending. Also you may need addative effects to have i.e. make an oh -> oooh

Problems......... i'll have a think!


09 September 2002, 09:36 PM
Eek, thanks for the file. I learned a few things that I otherwise probably never would have bothered with.

09 September 2002, 10:36 PM
ya Eek you are awesome thanx for the feed back if ya have more keep it comin...i'm trying to soak it all up....btw i'm usin Maya 4

09 September 2002, 09:12 PM

I just love to animate, and setup up good rigs that work really well! for animators, ive seen so much bad stuff out there. Facial stuff is something ive been looking into for ages! And needed to design a system thats gives every possible gesture or emotion-its getting there! (Pixar is king for this kind of stuff, and this is where i got my idea. Basically they have multiple groups of vertices, using Gepetto software and then give them Avars animated varibles,and also i think they work across muscles lines.)

My system has four main mouth controls, mouth edges and cheeks. And ten lip controls.Pulling the edges cheeks affects the whole mouth, pulling and puckering,and then tweek the lips!!!

But anyway thanks again, and if anyone not only on this thread needs some help with rigs (Bipeds, Quadrapeds, anyped)- im always here (check it everyday).

More will come-
Maya 4, XSI version soon hopefully, goto add sliders as well!!


09 September 2002, 08:46 PM
Beta version getting there!

Added sliders to control individual muscles. Still control corners of mouth and cheeks with points. Added Eye controller, no pupil dilation yet. Also need to setup whole expressions on sliders some how?

Select the slider point,then modify panel to use sliders.

Heres the file:
Right-click save target as:

Still in Max 4,5
Goto XSI, Maya next!


09 September 2002, 12:28 PM
Added jaw control and teeth. Animation test next week!!


09 September 2002, 07:19 PM
wow man thanx keep this stuff comin you're awesome

09 September 2002, 08:24 AM
Found a way of creating expressions i.e. mouth shapes ee,ooh, etc. Basically stick animate on make a mouth shape at frame 5, of eeee, using sliders and points. Then place that key at minus 5, and add a tag at that frame called 'eee shape' then when i need it just copy it over 0 to wherever. So i mght have eee at -5, ooh at -10, mmm at -15 etc, etc.


09 September 2002, 08:55 PM
i see that u are very deep into this facial aniamtion matter.
10x for replayng. i found a facial setup, based on clusters, with pivots in good places. i'll look on it, and if i'll get the permision, and u are interested, i can send u a copy.
thancks again.

09 September 2002, 09:09 PM
Please send me a copy, it sounds cools. As for my rig it's getting there, just goto transfer it over to Maya, XSI now!, and do the anim test!



10 October 2002, 09:00 AM
Im building this facial rig for a short film im working on, and am also building the skeletal rig as well. (as everyones posting theirs)It'll be called the 'Kassius' rig, and will arrive on monday for reviews, critique, etc. It'll have every control possible hopefully!, well enough to pull off any pose!

Sorry of the delay on the animation facial test, i have too much work, but next week it should be there.:buttrock:


10 October 2002, 03:42 PM
ok I know this thread is prolly long dead, but I am reviving it cause this looks realyl cool...ever finish the maya version?

10 October 2002, 04:13 PM
Hi kingmob, it's getting there, just very busy at work! DAM!!!:annoyed: . Will try start this week.


10 October 2002, 04:17 PM
no problem man...looks really neat tho.

I am very new to animation, and setting up my guys face with bones and set driven stuff...should work for my first attempt, but your setup looks very complex.

hope work is going well.

Gonzo The Great
10 October 2002, 03:44 AM
Dude... I think in theory this is a very good method.

I implemented my own version of this method you suggested into my Hi-res model. However, I organised my splines into a near anatomically correct way in that it mimicks the pulling of muscles and not so much pushing. Granted it is the best method I've seen. The sliders and orientation constrants with wieghted influence work well in your example. But I just want to worn people out there - It is very slow on hi-res characters.

You applied Linked X-Form and Mesh Selects to a very simple model. Then applied a meshsmooth. I had a model with many vertices and needed to apply a Soft selection in the Mesh Select Modifier.

I have a beafy machine with a 3dlabs Oxygen GVX1 GFX card... it still had trouble.

Gonzo The Great
10 October 2002, 06:31 AM
Wait. Wait. Before this sounds like I'm bagging the technique I should say first - I'm currently using.

I should suggest a work around.

1. The Multires Modifier!

Use multires to the absolute minimum you can but to the point where your Helper Objects are near some vertices.

2. Collapse the stack to Editable Poly, Patch or Mesh.

It won't matter how bad the polygon reduction is because you can then go back to your original model. Copy and Paste all the modifiers in the Proxy object's Stack to the Hi-res Model as the Helper objects are the only ones being animated.

(Because of this... the Linked-X-forms and their Helper objects can be applied a different looking but similar mesh - You only need to re set the Mesh Selects to the new mesh.)

NOTE: Don't use Optimize because it deletes and moves vertices around - resulting in the helper objects driving the wrong vertices.
Multi-res will only delete vertices and generally keeps things more symmetrical.


If you're using Character Studio or Bones, I'd go with animating the facial features the Pixar way. That is.... Pantomime the body gestures and THEN go back to "Put the Icing on the cake" with the Lip Sync and expressions.

If your using Physique - Link the Helper objects and Splines to the actual Mesh itself... not the Biped Head as the manuals suggest. This is because Physique naturally assumes a new linked object is a new part of the Hierarchy and creates is own envelope weighting. (You can if you need to.... but you just have to Turn Links Off in the Links Sub-Object level.) Set the Biped Head to Rigid - not Deformable.

10 October 2002, 08:58 AM
Thanks for the reply....


its not that complex..just lots of it! i set it up because i needed a system that worked really well and gave me freedom todo anything-well 260 variations! i.e expressions, nuances!!


Firstly this system is inbeta state, ive spent about three years working it out. It relies on pushing, pulling vertices and so its memory intensive, this is why i work with a poly-version the subdivided at render time. My ideas came from using Softimage at the Framestore on Dinotopia mini-series. That character had around 300 controls, in its face alone!. I work by animating the characters peformance first then add the lip-sync, expression, nuance.

The facial stuff is the last thing in animation, it just helps the perfomance.It is'nt the perfomance.I'll spend 10 days on acting and 3 on lip sync!

Gonzo be very careful implementing this rig in a hires model!!
i havent done that yet! I did this rig to see if there was another way to the whole system, and got sick of seeing bad mocap, and un-synced lip-sync.I put it on this forum to show my progression-and it's still in progress.


Now back to the rig.

Vertices have positions in space, like say 101.5,30,67.34.My rig links these vertices by linked x-form, (clusters in Maya and XSI-Softimage.)to nulls points. Then addes constraints. i addes NURMS at the end. So basically this vertex controls a group of vertices through the NURMS acting like soft selection. Which are controlled by points,nulls.

My model stems from a sudivided editable poly object, not and edit mesh. If you model with edit mesh the faces are triangla, so you might get tearing,and snapping.Patch's a whole other ball game because your linking and constraining bezier handles, and points.My stack is simple model->linkes->subdivided. If you add additition modifiers like multires you might get adverse affects, eg.

Youve wired up a cheek that controls the corner of the eye through link, constraints. With a moderately complex model.Sudividings fine because it doesnt affect, just adds more faces.

But mult-res generates an average of the model,which can reduced down. But this doesnt take into acount that important vertex you wired at the cheek to the eye. So the link is searching for a point that either doenst exist or has moved.This would effect every point up the stack. Also even if you wak the modifier at the top, i dont know if linked x-form looks up the stack.Sounds very dodgy!

I will endevour to stick this rig in a hires model, actually i have one.! But at present in BETA STAGE-NOT FOR PRODUCTION USE.

Ok, back to too much work.WANNA DO MY OWN STUFF!!


Will update some more soon!(definately this week!!)

Gonzo The Great
10 October 2002, 06:05 AM
When you're talking about Beta, are you going to make a script out of it? Cause Beta generally refers to programs. What I DLoaded was a Max file. Was there more to it? Somethin I missed.

But this doesnt take into acount that important vertex you wired at the cheek to the eye. So the link is searching for a point that either doenst exist or has moved.This would effect every point up the stack. Also even if you wak the modifier at the top, i dont know if linked x-form looks up the stack.Sounds very dodgy!

First of all - I said apply Multires to the Editable Mesh. Then collapse it. Do this before all the crap goes in.

Multires doesn't move vertices like Optimise. It only deletes. Sometimes it looks like it moves but it doesn't really. Besides, you can simply go to it's Vertex Sub-Object level. Select the points assigned to MeshSelect and choose "Maintain Base Vertices". Generate. These selected verts are the priority ones and only stuff up at around 1% or less.

The problem I have at the moment is that I've already built my model. Next time I construct a new one... I won't need to do this.
Most likely I'm just going to go with XSI 100% from then on so I'd like to the XSI version spit-firing!

10 October 2002, 03:48 PM
yeah, this is looking really interesting. Its a nice way to get what seems like really cartoony deformations in the face so keep the posts and updates coming. If you have any mb files we could dl that would be cool too.

10 October 2002, 07:03 PM

Awesome stuff man.... really anxious to see how it all turns out....

Did you ever get a chance to work on the Maya setup of your facial rig?

Keep up the good work!

Gonzo The Great
10 October 2002, 01:25 AM
I will post my own rig using this technique in a couple of days. Its a little bit more complex to suit the character. I'll send a very low poly version with it too.

It definately works.

I hereby fully endorse this event and/or product.
It has changed my life.

4 1/2 stars.

10 October 2002, 02:24 PM
Thankyou! very much gonzo. Thats the great thing about this rig, you can fit the setup to any mesh however complex.

Ive just added a V/F expression/mouth shape control! will post pick on monday. So in all the rigs got about 900 variable expressions!!!:eek:

Im so pleased and amazed, that so may people are intrested and want to learn about the rig/technique, i will make a maya ans XSI version soon.And try to post a tutorial.

Once again thankyou all, and i'll keep the posts coming. Also im gunna build a proper face soon, with eyebrows, hair, wrinkles etc, using the rig!


10 October 2002, 09:16 AM
V/F expression control added.


10 October 2002, 03:41 PM
Hi, Eek

I d like to give to my character better facial anim. Ive got some traditional anim knowledge.The morphing (easy but so linear and rigid method) cant compete with the freedom of drawing, I know.
But Ive been lately trying to set up other methods. The trouble is that Im in the artistic side of the field rather than the techie. maxscript, and even blocked with a (sure youll find me stupid) problem like the one Ive got when I try to link your (so clever and wonderfull, near what I was dreaming about!!!! ) faceR8 facial set up to the head of a biped. When you move the Biped, splines linked vertex inherit twice the translation. But dono how to solve that.
I also made an alternative set up by using skin modifier instead. Seems to run faster. Ive included the max 5 archive. Cant wait anymore to see your finished set up... I Wasnt able to open your last Zip.
Thanks a lot for sharing your knowledge!!!
Juan D.

10 October 2002, 07:47 PM
Hi Zapatoon,

Thanks for getting in touch, this face will be eventually part of a whole mesh(body, arms,etc) So thats why your getting additive effect. You should never link/parent the mesh to anything if its got skinning, or linked X form. But only the rig/points controlling controlling it. So basically if u skin all the vertices of face to points/bones and move the points/ bones the face should be fine.

But using the skin modifier seems quicker!, might give it a try!

Thanks again.

Ive built my kassius rig+faceR8 rig now just need to put skin on them!!


10 October 2002, 08:55 AM
wow...your different expressions turn out really good. right now im also trying to figure out how to use facial animation. cant wait till you get that maya file on here.

thats some good stuff

11 November 2002, 11:59 PM
soooo.... what ever happened with this i wonder... hmm.....:surprised

11 November 2002, 04:10 AM
dunno i've been dyin for updates still good thread though

11 November 2002, 12:50 PM
Ok, still alive.!

Well basically had to hold off on the rig for a while. Got to do 90 hours of animation in 2 weeks ahhh!!! for work!ahhh!! But ive started building my website, and ideas on a new short which will use the rig!!

Did an update which used the skin modifier, instead of linked x-form, which speeds up the rig about 60-75% percent few bugs though. Im gunna host it on my site along with loads of other rigs, biped, quadraped. Animations, links, resourses. I'm gunna do a maya setup next,(it seems everyones really wanting a maya version of this rig!!) xsi later.

So, sorry for the delay, just busy with work.Dont have time to do my own stuff!! which is really annoying.

My next short will be about a mouse, so ive got lots of complex rigs todo, and animation!! more on my site..


11 November 2002, 12:46 AM
just wondering.... whats your website?

11 November 2002, 10:11 AM
Havent finished it yet, about a week left to go. Gunna have links, resources, tutorials, textures, rigs, downloads, features, news. Its, gunna be an online source, for all this stuff. From anyone who wants to show off a technique, tutorial, rig, etc. I'll put this rig onto it aswell. And if anyone else like yourself has a technique, tutorial ,rig texture,link they want show off i want it on there. Im gunna put my, showreel, short film, rigs on it. And hopefully some new short film ideas.

Tell you more when its nearly done!


ivo D
11 November 2002, 10:14 AM
ok i find this great.. your a real miracle worker.. spending all this time on it..

think i speak for all when i say.. we apresiate you just letting us see the whole process and sharing it all with us..

great job!!

do you have character rigging tuts.. btw.. ? caus i really need something.. a really good one(max user)

11 November 2002, 10:10 AM

Thankyou, I just really like working stuff out. I need to put it all together, my rigs,setups etc, this weekend. And all hopefully towards a new short film!

I'll keep the updates coming.

Matt Leishman
12 December 2002, 04:19 PM
I guess this was one of the posts that got lost in the infamous server crash of 2002. As I had mentioned in my previous post (which was lost) I hope Eek doesn't mind but I took his posted Max file and did my best to recreate it in Maya 4.5. It was a lot of fun cranking away on his setup and I think I've got something that works pretty good in Maya 4.5 (with very similar functionality). If anyone is interested, feel free to email me and I'll send you a copy of the file (I don't have webspace right now to d/l it from). Merry Christmas!!

Matt Leishman

12 December 2002, 04:37 PM
de ja vue!!

So im replying to a thread, i posted 2 weeks ago? errr confusing!

Anyway sith, thankyou for making the rig in maya. Im so busy with work, but next week finish for christmas hooray!I dont mind you making the rig as i generally stick to xsi and max. I'll be working on the rig and loads of other stuff for my new short!

Keep in touch, and keep on learning.


p.s (what happened to the server???)

12 December 2002, 05:06 PM
hey I would love to take a look at taht rig, can could probably even scroung eup some webspace for it depeniding on size..

Let me know please cause this is very interesting to me.

Good work both of you

12 December 2002, 07:33 PM
Has anyone tried this setup in Maya yet?

How would you go about using the Locators to deform the face?
As influence objects to the skinCluster?
Or maybe as just regular Clusters?

I was really looking foward to dissecting the Maya rig once it was put together...

Looks like a great setup!


12 December 2002, 11:00 PM
Sith(Matt) has made a great conversion:thumbsup: , of my rig to maya. I'll keep developing it, through to max 5 and xsi.

Anyway have a great christmas people, a keep up the good work!

updates will keep coming!...

12 December 2002, 12:36 AM
hey man this is a really great setup...just wanted to say thanks for sharing this technique and knowledge.....

I hate using morphs and bones and was just getting the idea to create something similar when I saw your post....saves me alot of leg work;)
thanks man!

Matt Leishman
12 December 2002, 01:11 AM

I'm currently writing a tutorial on the bare bones basics of setting up eeks face rig in maya. Hopefully it won't take me more than another week. Until then though, the locators themselves are spots on the geometry that clusters are parented to so that when you move them, the clusters, and subsequently the geometry points being controlled by the clusters get deformed, but there is also an added degree of muscle deformation that is setup through the cheek locators. The locators at the sides of the mouth are constrained to the cheek locators but not with a constraint value of 1. Its a little heavy to explain here, but hopefully my .pdf tutorial will help explain it better once its done.

Matt (sithwarlord)

12 December 2002, 02:15 PM
It would be nice to see how your XSI conversion made it. Any ideas on when you will get the time to do it?

best regards

.stefan andersson

Matt Leishman
12 December 2002, 08:46 PM

I couldn't be sure if you were talking to me, or Eek. I unfortunately do not ever plan on porting it over to Xsi. At one point Eek said he may do that, I can't be sure if that is still his plan, best you ask him. Sorry man.


12 December 2002, 09:56 AM
Hey StefanA,

I'll start doing the xsi conversion this week, and finish it off in the new year.It'll be virtually exact as the max/maya version, spline, clusters, constraints and points. I'll add a pdf version with the max/xs version.

Im so please that so many people are intrested in the rig, and have taken it further into new software. I started it because i was annoyed with facial animation setups, morphs, bones and even blend shapes didnt really work.

Thanks again(especially matt for doing the maya conversion)

updates will keep coming...


12 December 2002, 11:23 AM
any chance that the maya 4.5 version can be made to work with maya 4.0 ????

Matt Leishman
12 December 2002, 04:31 PM
I had a mel script for maya 4 that would take a maya 4 file and convert it to a maya 3 ascii file (I got from highend3d), but I don't have the time to make it work for maya 4.5 to maya 4 right now. I would have to just recreate it in maya 4, and unfortunately I won't have time for that until the first or second week in the new year. sorry womanonfire, if you can wait then I'd be happy to do it in 4.0 in the new year.


12 December 2002, 02:15 PM
i' ve just replied to be so sure to receive a email with replies, am very interested in this, kuz i think making morphtargets it so project dependent, don't like that at all

12 December 2002, 08:46 PM
I find morph modifiers incredibly flaky especially in max 4. Bones seem also unreliable and are conrstrained along a rotation or ik handle. Also morph as you say PIXAR there completely project dependent.

Ive been inspired recently by Golum from Lord of the rings, so im gunna give it a go at putting my rig in a character ooow!! with a complete new body rig!!

updates coming...


12 December 2002, 12:42 AM
I've been watching your development on this facial rig for a while, eek. It just fascinates me! I've never been called on to rig a face before, and what little facial animation I've done has left me dissatisfied with Max's morpher, to say the least. I'd be very interested to see your facial rig working on a full character model, as the deformation on the simple low-res "mask" just seems to good to be true!

My only issue with your rig is that I would prefer grabbing handles in the viewport over fiddling with sliders, especially since there are so many controls. I hate scrolling through rollouts and such. Actually, my ideal situation would be to have a hardware-based solution like a fader console, set up to drive the facial controls. That would be sweeeeet (especially in conjunction with the mocap utility!) :thumbsup:

12 December 2002, 12:58 PM
Hey LFShade, the rigs got 2 versions on with sliders one with not. I put sliders in because max's path constraints very flaky and i was getting snapping to either 100 pecent or 0!! very annoying. Im gunna build a head over the next few days and put the rig in it. Also start on the XSI version. The xsi version will be stable without slider! Also the max version now relys on a skin modifier and not linked Xforms, so it doesnt have to look up the stack all the time for about 30 linked Xforms!!

Ive been thinking about the mocap idea, for the past few days, dont know how to implement it but will based on referencing video clips- somehow?


12 December 2002, 03:37 PM
Hey all!

I've been using Max since version 1.2... but have never attempted detailed facial animation like what you guys are wanting to do.... nor do I think I ever will... but I find your technique very interesting to say the least. Thanks for posting the max files. I'm looking forward to seeing your hard work in action.

Keep up the unselfish, very appreciated work!


12 December 2002, 12:01 PM
little update: First inclings of the gollem rig!!...Im gunna try implement so facial mocap system into it somehow?


12 December 2002, 12:49 PM
damn damn, that looks good man, can't wait to see this fully in action

12 December 2002, 11:20 PM
Added eye controls..! Exciting..!


12 December 2002, 11:37 PM
i think it's even more exciting for me then for you :buttrock: :buttrock: :buttrock:

12 December 2002, 01:37 AM
Looking good, eek! How's the speed on this heavier mesh? Can we see some deformation tests (without all the controls in the way), or do you not have the skin weights tweaked up properly yet?

01 January 2003, 08:55 PM
Hey LFShade,

It's getting there, few bugs though, the speeds ok. At present it's using linked Xform to constrain the vertices to the controls; eventually it'll use a skin modifier so it wont have to look down the stack all the time(so speed enhancements!) The more detailed the mesh the more complicated it gets with linking controls together e.g the corner of the mouth with, the cheek, with the eye lid. So theres more research todo to study muscle skin reaction.

updates coming..! and some pics without the rig in the way.


01 January 2003, 12:11 AM
Hey All..

Looking Great eek...
Matt / Sithlord, just registering my intrest in a maya4 version of the eek facial rig.
I'm at the stage where I'm going to haveto start looking into a full facial setup, so any research you guys have done will speed up the learning curve 100 fold I'm sure :):)

01 January 2003, 01:04 AM
I'm interested too. Are we going to be able to download the Maya version somewhere (maybe right here?) or...?


01 January 2003, 04:32 AM
could I maybe have a quick how-to that can point me in the right direction as to how I implement the rig with my own mesh..max version...

01 January 2003, 02:47 PM
It's getting there, i just want to work out the rig so it works with most meshes, the main problem im getting at the minute is creases! but that should be fixed when it goes to skin modifier.


01 January 2003, 03:46 PM
Big,big update this time...

Basically rebuilt the rig, and adjusted model to follow proper muscles and creases:


Corn Dog
01 January 2003, 04:12 PM
So the green boxes are they objects you created? Are they setup to follow the red paths while using expressions to animate the facial polygons/points?Or is this some aspect/component/plug-in of software that im not familiar with? I'm new to this so.

01 January 2003, 04:34 PM

The red lines are paths, the green,blue boxes/crosses are points.Some are contrained to the paths, whilst some points of the paths are contrained to points.Basically the lines act as muscles,points are constrained to these and vertices are either clusted to these points or skinned. Theres tonnes of weighted constraints all over the place especially in the mouth area, but you have almost total controls as all points move to give you finite control. The main controls are the corners of the mouth, lips, eyes, eyebrows and nose. Theres about 70 controls at presents, and each affects each other slightly, about 900 variations in the main controls and about 4000 overall.


01 January 2003, 09:51 PM
eek, could you post some version of the rig (like the earlier ones that you've posted) to play around with?

01 January 2003, 10:48 PM
Here you go, it using the last model, it's max 4 version.

right click- save Target As:


01 January 2003, 10:52 PM
Thanks a lot. Yeah, I was just clicking on links so I thought they were down.

01 January 2003, 01:21 AM
How do jaw controls and v/f controls work?

I think you can wire points position along paths and the attribute spinners both ways safely (works here) so one can chose to move them manually or to use spinners.

01 January 2003, 11:32 PM
Ok, so I'm unable to load the sample scene, not having Max....^_^

However, As I'm trying to grasp the concept I need to talk this out a bit. Basically what you're doing is to take clusters (sorry, maya point of reference) whose influence is weighted out into the surrounding surface and constrain their movement to the curves. That way their movement is congruent with muscular contraction. Am I on the right track?
It also appears in that last "gollum" image that there some reciprocal alteration of the muscle curves, so that as one "muscle" influences the face, the others are deformed so that *their* deformations take into account the topography.

Am I on the right track? Am I even comprehensible?

If this is what I am thinking... its damn impressive! If nothing else, you've spawned a whole new thought process in my head. Thanks. I'm eagerly awaiting any furthur developments.

Matt Leishman
01 January 2003, 11:44 PM
Hey CaptRuss,

Yes, you are right, Eek's system is very impressive. You mentioned that you are thinking on a maya wavelength. If you are interested, I took Eek's original rig that he so graciously allowed us to have, and tried to recreate it as best as i could in Maya 4.5. Just let me know by emailing me with your email address and I'll get it to you.

Thanks again for the system Eek, you rock man!!

01 January 2003, 03:44 PM
Hi all,

Very impressive work !

As I was playing with your sample scene, I had the idea of creating a script to make a simple interface with the custom attributes (like Morphsliders by Bobo if you know it ...), and adding a rollout to create combinations and options to save/load them in a file ...
I made my script to work fine with Custom Attributes and Morphs

It's the first script I wrote for Max, and is not totally finished (few bugs ...). So if you have some ideas to improve it, feedbacks are welcome

Sorry for my bad english too :shrug:

there is the link to my script : (

it's a macroscript ...


01 January 2003, 06:39 PM
Wow, Thankyou for your responses and your instrest in the rig.Sorry for the delay i havent had internet access for a week!!.
Anyway questions:

about v/f controls, the top and bottom lips work on to spline sets, so you can control each set individually also the point controls on each lip can rotate/translate so you can make mmm shapes etc.

Yes, thats how it works, like muscles of the when you move the corner of mouth control, it effects muscles(lines) in the cheeks.Points on the lines affect the surface mesh evenly, so you get compression/stretching. But then its gets complicted as other muscles come into effect like round the nose.These muscles are bound to points on other muscle getting muscle to muscle interaction.I'll post a gif anim!

Thankyou again.

Hey cool, ill give it a try.

Once again sorry for the delay people, just busy at work! updates coming soon!...

01 January 2003, 10:28 PM
bolbacool, need some help with your script. Umm... How does it work? I use it on a faceR8VFcontrol+sliders.max file in max5.

OK, I ran it and add a Morphs_Utilitaire button. Then I select the "Sliders" helper (that's where the custom attributes are) and press the button. I get a "--No ""get"" function for undefined" message and it highlights "temp4 = execute temp3". And it creates a blank "Movements faciaux" panel. I'm not familiar with Bobo's script, but sounds interesting.

01 January 2003, 10:42 PM
Yes, it's strange I have the same problem
but if you close the rollout, click on File>evaluate all, and click the macro button again, it works ...
As I said, it's my first script, so I should have made an error somewhere, I hope I can fix it quickly ...

01 January 2003, 11:11 PM
Ok I found th error

Here is the new file :

01 January 2003, 11:14 PM
Wow, that's cool. Very cool. Animatable although a bit buggy. I feel something really good can come out of this thread. Keep working on it - pretty damn bright for a first script.

What's merge, load and save? You know what would be a good idea? In merge rather than "average" positions combine those sliders that are off the neutral position. So you can combine "left eyebrow up" with "oo" for instance.

01 January 2003, 11:20 PM

I have some ideas to improve it, I'll post "updates" ...

what do you mean exactly with "Animatable although a bit buggy" ?

01 January 2003, 11:25 PM
Merge Load and Save give me a bunch of errors. Try figuring out combining expressions - I guess Merge would be it. Would be better if one could "add" a pose keeping elements of the previous pose. Like you already have the mouth shape and you load the eyebrow shape. I tried to explain in my previous post - there's a neutral default state, don't average the position of the sliders that are on "neutral" when you merge or add.

01 January 2003, 11:26 PM
with load save and merge, you can keep the poses into a file (with save) and reuse them later (with load). Merge add the pose of a file if there are already poses in the list.
Hum the errors must appear when you type cancel. It's because I don't have scripted this, so it returns an error

What you suggest to combine to different poses is one of the ideas I had to improve my script ;)

01 January 2003, 11:28 PM
:thumbsup: Looking forward to it.

You may also think of "subtracting" a pose from the expression, or "replacing" it.

More ideas for a setup with this script: wire the jaw 2-ways to an attribute as well. Wire all helpers 2-ways so they could be manually adjusted. Add per-slider and global "Reset" buttons.

01 January 2003, 11:35 PM
Yes, I thought of that too

I put another function
If you notice, there is a small button on the right of the spinner
if you click on it with few attributes, the attributes are the same when you change the value of one of them.
For now, it works only in "absolute" mode, but I will make also a "relative" mode to add the value to the other attributes checked

01 January 2003, 11:39 PM
Man, there's so much potential in it. That was the missing part of eek's setup.

01 January 2003, 11:49 PM
Oh, one more thing. In one of the tests here I wired custon attributes and helpers both ways so you can manually move the helpers. Right now unless I regenerate the panel it gives errors after I manually move the helpers cause the values don't match obviously. Is there a way of keeping the panel sliders "live" or at least regenerate the sliders each time the object with custom attributes is selected?

Here's a 2-way wired file (may not be perfect).
file (

01 January 2003, 12:03 AM
hum, I'm am not sure of understanding what you are talking about.
I don't have scripted the fact that if you change the custom attribute outside the rollout (or move the helpers manually), the sliders don't update automatically.

Am I right ?

OK, I see what you said. I think it's not difficult to do what you want

01 January 2003, 12:07 AM
That's correct I believe.

One problem I see is that cheek and nose control points don't have custom attributes. Is there a way to record their position somehow? It's kind of not what the script is dealing with, but it's important in reproducing the expression.

01 January 2003, 12:36 AM
Yes it's a problem, and I see no easy way to do what you want because my script "scan" only custom attributes, and not the transformations

01 January 2003, 12:56 AM
Yes, I see. If there was a way of translating their position into custom attributes during rigging your script woud work on them as well. I'm not sure it can be done, though. Maybe there's another way of rigging them to fit into that workflow. Maybe they could move on splines as well.

Like a helper would move a vertical spline "out" on on a horizontal spline. Not something you have to deal with right now, it's more of a general idea. A good script recalling custom attributes configuration like the one you're working on would go a long way towards making this setup usable.

01 January 2003, 01:34 PM
little update:

Just rigged everything using skin modifier(very quick now!), The cheek controls can easily be put onto custom attributes, and i'll start working out the nose(quite complicated) setup. All majoror and finite controls will be on slider including v/f controls.

anyway will try and finish sliders today, nose end of the week hopefully.


01 January 2003, 02:05 PM
little update of my script : add, substract and simple blend functions added. Reset defaults also added, but the defaults values seems to be wrong in the custom attributes. Maybe I should put a set defaut pose button ...
I maked a mistake in the "setting pose" so it was quite long to apply. I fix it, it is much faster. Try the random button to see the difference

I'm working on the feedback when you move or update a helper or a custom attribute, but I don't understand very well how the functions work. If someone knows how to do that ...

01 January 2003, 10:12 AM
Right now the setup didn't work for me. Could be because of rigging inconsistancies. I only could play with it for a very short time, though.

"Set default" is a very good idea. Then "Add" or "Add to default" (or "Add to neutral") would be useful. The attributes that are neutral in one of the pose shouldn't average in this case. Just take the non-neutral value of the other pose. I guess it doesn't make much sense. Like I want to be able to add "open right eye" to "open left eye" kind of.

Would be nice to get sliders to update when I move helpers... I don't get errors now. The helper just jumps to the slider's value when I move sliders.

Also if i close the rollout the poses disappear when I reopen it. Also if I name a pose before hitting "New Pose" I get an error.

Just trying to troubleshoot, I really want this setup to work.

01 January 2003, 12:33 PM
Ok, one another little update

- Set default position added
- a check box to store (or not) the default values of the custom attributes in a combination. I guess it will work well for for what you want dvornik
- helpers transformations update sliders now, but in a little wired way. I hope I'll find what's going wrong. But it works !

Eek, have you tried my script ?

And for now, the only way to keep the poses is to save them into a file, and reload them each time you re-open the rollout

01 January 2003, 05:21 PM
yes bolbacool i have tried your script and its very cool! What would be cool is to turn each pose into a slider,
so you could blend it with any other pose as much as you want! or just from neutral. This script is brilliant, and thankyou for spending time on it.

Pointing out about dvornik, i just have the script working for different parts like each eye, nose, mouth, is it possible to have multiples of you script working in the view?

little update: start to work on nose control, pic coming soon.


ivo D
01 January 2003, 09:26 PM
this is a request..

im reading every week.. keeping up the progress.. and i find it great what you all make etc..

im still trying modelling.. havent animated a thing.. still trying modelling technieks and all that ..untill i get everything right and so on..

no is my question to you all here ..who are so advanced.. * caus you are busy with animating all the time..scripting..inventing best ways.. muscle ( anatomicly correct mesh deformation)

could you make a tutorial.. for it.. how to se it up..
how to use the scripts etc.. for use.. ( noobs in animation)

so we can all..take a leep in the animation.. and understand it right away..
it would be a big help.. than we would all understand it.. who are interested.. and are ready to animate descent models.. and we could figure out some cool new ways of animation to probably..

thats the favour im asking you guys... make some screens ..wright down what you are doing..

and how its done.. i know you are all experimenting to.. but than at least a lot of the 3d people can join you.. trying to figureout good ways to do stuff..


01 January 2003, 02:25 AM
If you need web space for the Tutorial, I will be more than happy to help post it! Thanks again, and if there is still any way to get a Maya 4 version, That would also Rock! Maybe if I see the 4.5 tutorial, I may be able to help port it. Thanks For the great work it looks Very Awesome.


01 January 2003, 11:04 AM

I will start making a tutorial on the rig, tonight from scratch. So you can follow the rig as it takes shape. The basic knowledge, you need is using linked Xform, wire parameters, constraints and the skin modifier.


01 January 2003, 12:38 AM
Cool!!! Let me know if you need some posting space.


01 January 2003, 05:47 AM
How is that tutorial coming?? Im _very_ interested in seeing how exactly you acomplished this (it sucks I cant play w/ your scene files since i dont own or know max).

Good luck, and thanks for sharing this information.

ivo D
01 January 2003, 09:57 AM
.. could you give.. some info about the restraining.. line things you mentioned.. im formiliar with skinning but the rest you recalled i dont know..

just a little reference page for the info in the tut.. or a few lines to point those things out,,,

a sort of speed.. breefing.. about the stuff you have to know.. and simple short explanation how to..

*make this the best compleet animation tutorial.. with everything in it.. , you have the knowlidhge and the skill*

another guy is making a modelling tut.. human ,photorealistic body + head.. everything..

with the teeth tongue....everything in detail.. .. for all progs..

eyelids..well just everything to perfection..muscles and so on
and the texturing.. the hair.. well everything..just the nr1 tut..

and i hpe that .. this tutorial will be of that caliber.. to.

just that you need 1 tut for animation.. and thats yours.. :)

ivo D
01 January 2003, 10:00 AM
i meant this..

linked Xform, wire parameters, constraints

give a little.. speed explanation about that n it plz..

caus i dont know what you mean with the wire parameters and linked x forms..

i know how to se t up bones and skin models.. but for the rest.. its all a blurry.. world for mee

01 January 2003, 01:47 AM
Eek, if you make that for Maya you will be THE MAN!!

people would ask? Who's the man? and i would say 'Eeeek!' and then 'Eeeek is THE MAN!'

I have been spoiled by MenVee and when i get home to Maya i am always sad...
You could add a ray of light to my life with those kinds of controls.

Keep us posted, and if there is anything we (Maya and XSI users) can do to help, let us know.

Matt Leishman
01 January 2003, 04:28 PM
hey thesaint,

I guess you may have missed some of the earlier posts in this thread because I did take eek's famous rig and did my best to recreate it in maya 4.5. It doesn't have the special scripted functionality that has been discussed recently in this thread, but it does have the same basic layout and functionality of eek's originally posted max rig. If you'd like a copy to play with, and even reverse engineer, please feel free to email me and I'll send it off to you right away. But please don't say that I am the man, or anything silly like that. Eek is the man, it was his rig that gave the inspiration. I'm just a faithful disciple.

01 January 2003, 05:48 PM
well, i guess with 8 pages of text to read i did kinda skip a few... oops

I'll send you an email so i can take a look at it. Very cool.

Thank you. I'll drop you a line as soon as i am back in town.

If i add anything i'll post it back and share. Might try and get some help with it here.

Thanks to all who are participating! This is very neat.

01 January 2003, 08:12 PM

Just a few expressions, testing the rig, added nose control. Tutorial coming..


01 January 2003, 08:23 PM
wow, very good !

Will you share your Gollum setup ?

About my script, I think I'll have no time to improve it before a few weeks (I'm making my school short too ...).

Sliders for each pose is a good idea. Actually, I'm wondering if poses could be "stored" directly in the helper object with the custom attributes, and load while opening the interface ...

If Someone have time to try this ...

01 January 2003, 10:09 PM
I Wow too :)
Great work eek!

Looking forward for the tutorial.


01 January 2003, 10:15 PM
yup me too, i understand it almost completely, just wanna be sure i didn't miss anything

01 January 2003, 02:09 AM
Originally posted by dvornik
I'm not familiar with Bobo's script, but sounds interesting.

A very simplified version of MorphSliders ships as MAXScript Tutorial with Max 5.1 (the 5.0 MXS Help version had errors) and shows you how to build a simple UI for the Morpher modifier.
You can get the original (more complex) version from or Boboland. If I remember correctly, it was written in one night for a CGI feature DPH did for the Jay Leno show years ago.

01 January 2003, 04:48 AM
Bobo, help the guys out, please. It's going to be a really cool rig.

01 January 2003, 03:50 AM
WOW I'm really impressed with the Awesome versitility of this rig! I'm just dying for the Tut! Who said it..."Whos' da man? Eek, Eek's da MAN!!!!" I'll just say ditto! :beer:

01 January 2003, 01:29 PM
a body rig added to test if it works..

right-click save target as:


ivo D
01 January 2003, 04:57 PM
aah cool.. is the body modelled ..or some sort of biped. entity?..

cant wait for the TUT.. and learn it all myself..

now i dont get further than skinning..hehe

01 January 2003, 05:28 PM
Originally posted by thesaint
I have been spoiled by MenVee and when i get home to Maya i am always sad...

I'm just curious, but what is MenVee??


01 January 2003, 07:31 PM

Menv is Pixar proprietary software. It is the hub for all apps used in the pipe line.



01 January 2003, 09:57 AM
Thanks for that...

Is it their animation app or something else??

I'd be interested if anyone had any related links or articles - I'm just curious :)

- also must say how great this thread is. I'm hoping to hear news about a maya tutorial or similar - when it's ready..


ivo D
01 January 2003, 11:17 AM
a little question.. it aint of topic .. i think

what about messiah.. caus where all animation people.. or maybe like mee .wanting to learn it

is Messiah worth to it good.. etc etc..

i use 3d max 5 btw

Matt Leishman
01 January 2003, 04:08 PM
Hey steve,
Unfortunately there isn't going to be a maya tutorial any time soon. I just don't have the time. I feel bad because I did make mention of it in an earlier post, but I think I was just being a little too ambitious. Please feel free to email me if you want a copy of the maya file with the rig in it, if you feel like reverse engineering it and figuring out how it works. That's what I did with Eek's original max rig. Again, sorry 'bout that.

Matt Leishman
01 January 2003, 04:26 PM
hey steve,
I guess I should have checked my emails before I told you to email me! :scream:

You're one step ahead of me!

01 January 2003, 04:41 PM
Hey sithwarlord, thanks for that. If you could emil me the file that'd be truley great. But understand if you don't have time.


01 January 2003, 04:47 PM
Hey, thanks for your email and maya rig. I'll make time to chack it out. Meanwhile here's a screengrab of a test I did about a year ago. I was simply using bone rotation tied to Locator handles for facial deformation. The animation results looked a bit ropey - mainly beacuse my animation skills were'nt upto mutch at that time....

01 January 2003, 05:53 PM
little update:
Tutorial coming...

P.s Intresting rig you got there, looks like bones as influencer objects.

01 January 2003, 06:45 PM
Yah - it's bones, they rotate along the skin surface and effect the skin via simply painted weights. The jaw has a bone for openiong and twisting. It all worked OK, but needed a lot more thought for ease of animation.

Here's a few expressions from a not-so-great animation test...

01 January 2003, 07:59 AM
damn its good !!!

I will apply that to me character for sure !!!!

thanks a lot for sharing !!!

Does anybody already try to apply this method to his character ??

01 January 2003, 04:44 PM
Originally posted by eek
a body rig added to test if it works...

eek: I'm not able to see any of your links.
I'd be more than happy to post them for you and the forum if you'd like.

Love your work! That gollumlooks incredible!

01 January 2003, 04:46 PM
try right-click, save-as

01 January 2003, 05:59 PM
Didn't work before (I'd read eek's advice) but now it has
thanks doogie.

And thanks eek. I love the way you approach the facial rig!

01 January 2003, 08:50 PM
I'm trying to learn facial animation and these images are amazing! Unfortunately the links are broken to the examples.
I'm wondering if EEK has moved them?

01 January 2003, 03:32 PM
sorry if the links are broken (hate these free webspace sites). I'll post the links again soon.

Presently doing animation test with body/facial rig!

The tutorial will be on all the setup including the body rig. And cover points, constraints, bones, ikchains, custom attributes, etc.
Also cover puppets, helpers etc.


ivo D
01 January 2003, 05:30 PM
go EEK GO!!!

cant wait..

dont know shit..about howe to animate.. so ..than ill learn!!:)

making my characters do..the groovyest moves lol

01 January 2003, 08:32 PM
I'll ditto that too!!! :bounce: Go Eek GO!!!! I'm always excited when I get another update to this thread in my mail box! Thanks again


01 January 2003, 08:46 PM
Hiya everyone,
I'm with Mark on this one, this thread has definatley kept me interested!! Hows the production of the method to produce the phonemes and expressions when you need them?? That would definatley ease the animation process. :drool: Anyway, i'll let someone else speak now,

Assie :bounce:

01 January 2003, 04:22 AM
Yay! Thanks man. :thumbsup:

One thing. Is this gunna be specific to Max? or are you going to put little notes on other package's equivalents. Like knife tool and cut faces tool (thats the only one i know =P)

I cant wait... :bounce: checking this thread like everyday!

01 January 2003, 09:48 AM
Hi Doogie,

Yes i'll do that for you. Ive used max, maya, soft, xsi and lightwave.(done a bit of mocap as well!) So i'll put in the equivalant names e.g linked xform -> cluster.

Hi Assie,
Basically the phenome system is getting there, i got a great script that makes poses out of Custom atrributes - sliders. But need a way of blending them, so e.g you have a slider that makes and ee, oh,v/f control, so you can blend them.

Anyway back to work.


ivo D
01 January 2003, 01:35 PM
wow...eek your making more and more of it....
your realy liking it huh?

its great the thing with the poses...

dont know how it all works ,cant even animate yet..

but if i get it right...

soon we can make library's full of poses and facial features,with
you tut/scripts!!


whoohaaa!!!.. (hopefully ill undestand you r stuff..)

01 January 2003, 03:44 PM
That's going to be a big tutorial EEK..!

Looking forward to reading about your technique tho. As yet in my own work I haven't been pursuaded that anything other than carefully sculpted blandshapes and maybe a jawbone here and there are the way to go on most characters.

I'd happily be pursuaded otherwise...


01 January 2003, 10:43 AM

I'll start posting my Facer8 tutorial next week sometime, in addition adding some of the body rig setup. The tutorial will cover poly modelling, muscles, constraints, skinning, helpers. Also applying the rig to maya,xsi.

The body tutorial will cover, puppets automation Vs manual control, ik etc.

Working out the rig has about 70 controls giving around 4900 facial variations!


01 January 2003, 02:46 PM
Sounds like the tut of the tut !!!!!:buttrock:

I'm really lookin forward to see it !!

Thanks in advance :thumbsup:

ivo D
01 January 2003, 08:54 PM
so it covers modelling to ?...
and its max right..?

hope ill under stand it alll.. im such a noob in animation..never i hope to learn it with your tut:)

whoo.. i wanna animate!!!:bounce: :wavey:

01 January 2003, 10:07 PM

eek i love your technique :bounce:
it works well under xsi

let's study facial muscles to make good curve :)

here is a video (


01 January 2003, 10:35 PM

It'll mainly cover my Facial rig and body setup, it'll be for max. I'll try and put an animation tutorial in there, say a walk/run cycle. But strongly advise to get the animators survival kit, I have it in front of me open all day at work when I animate. I'll also try and add conversions to other software -maya,xsi.

Assec, thankyou for trying it out in xsi!

A pic of the body rig...

click-on, or right-click and save target as:


02 February 2003, 04:25 AM
Man I had to get a new keyboard because this one is flooded with drool! I am too excited!


02 February 2003, 09:52 AM
i think this tutorial is going to be excellent. I'll ask this here as it saves starting a new thread. When you have a character all rigged up, and you want to make a low poly segmented kind of puppet (to speed up the animation process), how do you go about doing this? Do you hide the high poly mesh, build the parts then link them to the bones? And when you have finished animating, hide the parts, and unhide the whole mesh?? I dunno, just a shot in the dark.

Thanks in advance, and keep up the good work eek,

Assie :bounce:

ivo D
02 February 2003, 11:24 AM
looks great eek!!

02 February 2003, 06:08 PM
Yes Assie,

Thats what you do, skin up a hi poly/patch/nurbs model. Then either use an optimised copy of the mesh, or just modified cylinders, (what i do) link them to the bones or controls and make them non-renderable also set your renderer to render hidden. So when you animate you just animate the chopped up version and at render time it swaps, hides them and render the hi-end skinned version.


ivo D
02 February 2003, 06:56 PM
cool.. you have to.. set those tips in your tut..

handy stuff..but its kindah hard do,doing it with facial animation..then youll just have to do it with the hi res modell..

but you animate the body and facial moves separate right..

that would be the best way i guess...

but ill see..cant wait to use your tut..
that will be my first step on the yellow brick road to the animation kingdom lol

02 February 2003, 07:45 PM
Hiya eek,
i thought that was the most logical solution!! Thanks for the reply, eagerly anticipating the arrival of your highly acclaimed tutorial!!

Assie :bounce:

02 February 2003, 04:12 PM
Hi All,

I recently created a facial animation rig in max.
The initial results can be seen here..

It was based around dummys..some constrained to paths.
Various wiring setups and then all controlled by sliders, if anyone is interested in knowing more about it I'll do some screen grabs and renders of it in action and maybe some documentation to go with it too.



ivo D
02 February 2003, 08:44 PM
i should wait..till eek comes up with his tut..tjhat will cover allmost everything so.. hehe :)

cant wait!!

02 February 2003, 01:29 AM
I just read this whole thread...and this souds Killer.. can't wait to check it out..the maya version that is. yes I emailed you sithwarlord
Keep it up

02 February 2003, 08:27 AM
This is SOOOO useful! Thanks alot for posting all this stuff, i was attempting to do facial animation with a bones setup, but is incredibly difficult to get the look you want. This seems a much more user-friendly way. Have you had any thoughts of posting a tutorial? That would be wicked... Any chance you could post the files again???... They seem to be dead links...
many thanks again
Joe B

ivo D
02 February 2003, 09:59 AM
there is a tut comming..EEK is working on it..we are all waiting..we just cant wait hehehe.. so you can join the club..

EEK our facial animation TUT GOD .. LOL:buttrock:

02 February 2003, 03:46 AM
Hows that tutorial coming? I know delays are inevitable, but for me cant wait to apply this to my own techniques and torture tests. :bounce:

Even though there's no update messages in my inbox, I keep checking this thread anyway just so I dont miss something.

Oh yeah, congrads on getting 10300+ views so far on this thread. You can sure attact an audience :)

02 February 2003, 09:44 AM
Hey people..

Very sorry about the delay, Working kinda eats away your time, i am working in the tutorial and a test anim using the body and facial rig,,, just takes time!! The facer8 rig seems the most wanted so i'll post that tutorial first.


ivo D
02 February 2003, 09:52 PM
oke we cant wait..take your time..

just make it one to last a lifetime :buttrock:

02 February 2003, 07:54 AM


Dude this looks great! I'm just learning how to animate in Maya. And this would really help me to get up and running with character animation in maya.

Can't wait for the tut!

And sith, I'm going to e-mail you for the maya4.5 rig of this, if you don't mind. I appreciate it.


Matt Leishman
02 February 2003, 08:12 AM
i just got your email and I just replied to it, so as i said - go nutz man.

02 February 2003, 04:08 PM
very interested in your tutorial.

I use to my facials rigs bones and a little morphs

Want to now what your tutorial is going to have diferent :cool:

i like facial animartion hopes to now something new with your tutorial

very very interested


this is what i use:

02 February 2003, 07:11 PM
In my online research of muscle systems recently, I came across this book titled "Computer Facial Animation"

Has anyone seen or read this book? It is from 1994, so it has been around for a while. Seems to be relevant to this thread. :)

I've ordered it so I can check it out, but I wanted to see if anyone else had seen it.

Michael Duffy

ivo D
02 February 2003, 09:26 PM
maybe a dumb question..but why take a book from 94.. lots of new ones around

thats old stuff..

not that i have any books.. but wow.. 94 they didnt have this kindah animation

02 February 2003, 06:32 AM

I was able to spend some time looking at the maya version of this rig. It is late now and my brain is totally tired... I figured most of it out... but I think the last items that I am missing is:

1 - I can't seem to find where the custom attributes under the sliderCntrl link to controlling the clusters (assuming that that is how it works)

2 - and also how the control splines (mlines) are moving, where is the link for that?

sorry, I just can't think anymore... tired.

02 February 2003, 10:32 AM

Don't you guys have a library full of morph targets for each character at DNA? Or do the animators use a combination of targets and bones for facial animation?

Just wondering how you guys do it...being that I live right down the road from y'all.


02 February 2003, 10:41 AM
hi engram for me the base fo my rig are the bones with this i can make a lot of expressions

and later Iuse moprh or targets for little details that be done with bones make me make more little bones .

I use moprhs for move the part of the nose, extreme smile

the benefit of this is you need a expresions that you havent you only have to make a morph that help you and dont need to remake the influences of the bones.

This method is for me very grate and powerful and let you make changes when you need it.

this is my opinion.


Matt Leishman
02 February 2003, 07:36 PM
hey rhythmone,

1. the attributes on the slider control object are driving the motion of the clusters (which are geometry constrained to the m-lines) with just driven keys. So the clusters are at a resting state right at the middle of the m-lines when that cluster's controling slider attribute is at 0. but when that cluster's controling slider attribute is at something great or less than 0, then the cluster will be moving up and down its corresponding m-line.

2. each m-line has a "point on curve" deformer attached to them (which just look like locators once you've finished applying that particular deformer onto the curve). the corresponding clusters which are on that particular m-line are then parented to the "point on curve" deformer. then the "point on curve" deformers are each point constrained to both the control objects on either side of the mouth (not the cheeks, but at the corners of the mouth). of course after constraining them and changing their constraint weights so that either control object is controlling them more appropriately, then you have to change the "point on curve" deformers constraint offset values so that they are back in the position they were in before you point constrained them to the control objects at the corners of the mouth. (that's a little wordy so hopefully it makes a bit of sense).

Anyways, hopefully that's a bit of help for ya.

02 February 2003, 09:32 PM
Makes absolute sense.... thanks.... I have yet to come across "point on curve" stuff... I will look into that on the help files.

With the general use of clusters (in this scenario) .... is that so that you can basically have a transform on a single vertex?..... It seems to me that clusters are typically talked about in the context of control several points... but lately I have come across a lot of files where clusters are attached to single CVs/Vtx. Am I right in assuming that you attach it so that you can manipulate a single vtx? Are there other benefits to this approach.

Matt Leishman
02 February 2003, 10:13 PM
the point on curve deformer is the last deformer on the drop down menu in the Deform menu item in the Animation section. Its really easy to use.

and for almost every case with this rig, clusters are used for single vertex manipulation. the exceptions are the 3 points at each corner of the nose, and (I think) 3 points at the corners of the mouth.

I'm glad you were able to decipher my gibberish

02 February 2003, 10:55 PM
well, the more I thought about it last night, the more I think i'm beginning to see the light. then with your post sithwarlord I think I'm really close.

Please take a look at my tutorial on the principal of this method and let me know if i'm in the ball park. Thanks


Matt Leishman
02 February 2003, 11:08 PM
you're pretty close dflipb,

1. I only put one point on curve deformer on each m-line, but if for your functionality you need to put the two on the ends of each curve - go for it man! do what needs to be done.

2. the way i attach the clusters to the m-lines is through a "geometry constraint", not through the use of path animation. Whichever you feel you have better control over, run with that.

3. I then parent the clusters to their point on curve deformer so the clusters can be individually driven by the control object sliders, but then the whole area of both bottom and top lips can be moved by moving the point on curve deformers (with the clusters as children of them).

Its great to see people pounding out their own ideas on how it should work in maya. that's what I had to do with eek's great rig, just reverse engineer it the best i could in max and do my best to translate back into maya.

unfortunately i won't have a tutorial any time soon, i was recently laid off from Viewpoint here in Utah, so I'm going nutz pounding out an updated demo reel to send out.

Later all!

02 February 2003, 11:24 PM
Hey En-gram,

Yeah, on Jimmy Neutron the characters are set up with morph targets for their phonemes, brows, eyes, mouth, etc. The only bone in the head is the jaw bone, to give more control over animating the mouth. But sometimes our animators have problems getting the exact eyebrow or eye shape they want, and they often have to dial up targets that are not meant to work together in order to get the shape more like they want it. So in the future we will likely be using more of a "rigged" solution instead of all morph targets (though I'm sure morph targets will play a large role in the new system as well.)

I'm going to be experimenting with my own facial rig sometime in the near future, mostly just for personal projects and personal curiosity. I went ahead and ordered the Computer Facial Animation book, even though it is a bit old. There are often techniques that appear in academia that don't make it into the mainstream for years. I'll be coding my own interface and automation scripts for the facial setup, and I may need to write my own plugins as well. And human faces haven't changed THAT much from 1994, so I'm sure their anatomical thoughts and notes are still relevant (^_^)

Michael Duffy

02 February 2003, 02:45 AM

THanks for the reply! It is truly exciting to know that I've finally hammered it out. Or atleast close.

as for having 2 points on each end of the m-curve, it keeps the ends of the curve in place with out them it seems to float if the point is just in the middle.

I'll have to check out the parenting of the clusters though, and give it a go on a character's face could someone send me the that head to try it out on in a maya 4 format?

Matt Leishman
02 February 2003, 06:47 AM
I only have the one point on curve deformer on each of the curves and the end points still stay still and locked to where they are. I'll see what I can do about sending you an obj of that head for your maya 4. Later.

02 February 2003, 02:36 PM
is it in maya or max that it stays?

I went back to do a test and this is what I found:

that is with all the defaults in the options boxes.

Thanks for checkin on the head for me. I appreciate it.


Matt Leishman
02 February 2003, 05:21 PM
hmmmm, that's weird. oh well. If it ain't broke don't fix it I guess. I must just have some setting slightly different from yours. No biggie. I'm getting that head to you right away.

02 February 2003, 06:28 PM
hey dflipb,
that is interesting... i have been setting up my own version of this file as well..... i think that you might just have a diff Nurbs curve setting....

if you draw a curve in maya with the "multiple end knots" unchecked then you get a curve that acts and looks differently then if you had that option on. With the option turned off you get a curve that does NOT reach your end CV's....

SO... sithlord's curves have that option checked and yours don't.... which make your curves have that "floaty" apperance but if you turn on the component display for your curves... Display > Nurbs components > CV's and also Hulls you can see better what i am talking about.... the end of your CV chain stays in place when you move the PointOnCurve deformer but your curve starts about 1 CV in from the First/Last CV on you chain....

hope that helps dflipb... :)

02 February 2003, 08:48 PM
Thanks for the head. Looking forward to tryin it out.

Actually I'm using the default setting for Create-CV Curve Tool. The default has multiple end knots checked, and when I create them, they are at the end of each hull.

I tried it with the option unchecked and it is different from what I am currently getting.

-weird. I am using 4.0

thanks for the Idea thugh


02 February 2003, 05:02 AM
great thread everyone involved, not that I understand too much of it... hehe, gotta start somewhere. Looking forward to the tut.

02 February 2003, 07:29 AM
Thanks Sithwarloard got the face and tried it out

here it is...

I used the methods that I tried to hammer out, along with using the self grouping of clusters to get this to work. It's 2am and it was a down and dirty, quick attempt to get it all to work. I'm very excited! Thanks for the help!

-good night-


02 February 2003, 07:43 PM
Hey people...

Thankyou for working on the maya version. Im thinking about posting a download of the gollum rig, and asking whether you want to be a beta tester of it, if you have max. And if you do whether you want it with sliders or not.


Looks like your moving the actual curves, which you should'nt
have to. Just the helpers that ride across the curves. I'll post a pic/movie.

skin test...
right-click and save target as:

Same test just showing m-lines...
right-click and save target as:



02 February 2003, 08:20 PM
Thanks... for those files.

The whole jaw is driven by the chin locator right?

I have to use NetScape in order to download the links. IE gives an error upon right-clicking.

02 February 2003, 09:09 PM
Hi rhythmone,

Yes basically, you rotate the jaw control, and it pulls the facial muscles down then you just tweak the lip controls how you want!


weird about the download, works on mine.

02 February 2003, 10:41 PM
yes I was actually moving the curves. I thought you moved the helpers and sliders. It's all makin sense.:lightbulb I see the light.! Thanks

I'll have to do a much more controlled test. :D

02 February 2003, 10:46 PM
...And now I understand that you use the Point on curve and add the attribute to adjust the clusters!!!! It's all coming together like finding the meaning of life!!!!! LOL

This is awesome.

My next task is to figure out how you guys are making set targets of smiles and frowns and blending those movements

Matt Leishman
02 February 2003, 11:17 PM
hey eek,
i'd love to be a beta tester for your rig, but unfortunately I no longer have access to max. I was laid off a couple of weeks ago, so now i'm only able to use maya here at home. I appreciate your offer though.

Matt Leishman
02 February 2003, 11:20 PM
what am i thinking?!!

on second thought eek, i'd love to get a chance to beta test that rig. I'll find me a copy of max to use. I don't know why i didn't just pull my head out and say that before. Thanks and hope to talk to you real soon.

02 February 2003, 10:43 PM
Originally posted by eek
Hey people...

eek, this is amazing and really enlightens some things.

I would love to see a tutorial video series or HTML explanation or walkthough, I think I have a idea of what you are doing step by step but would love to see the details.

Great job, love it very much!!!!

Need more people like you in this world.

02 February 2003, 06:27 AM

I have been starting to build a detailed rig based on this approach(Maya) and have a few thoughts/questions.

1 - I noticed on the gollum animation that you have the outter mouth paths coming together at the corners. Would it not make more sense to wraps those around so that you could form the big bowing vertical creases that happen outside the corners of the mouth? Was curious as to your thoughts here.

2 - What is going on with the blue curves under the eyes, and how are they related to the other control elements going on.

3*** - So far this is working really well with Maya subDs, which allows for multiple resolutions of the controls. Not knowing that much about actual anatomy I wonder if you (or anyone else) could post the most essential controls necessary for high level deformations. Like for the nose you have alot of control paths next to each other tight. With subds you can go for the same thing by simply driving the coarser resolution (so I'm thinking that I can get the same overall with 1 coarse path and maybe 2 higher rez paths)

4 - I have been thinking about re-purposing, I wonder if it makes sense to incorporate alot of nulls (which you could parent new faces to quickly for reuse/reassembly) or if somehow the rig could be generated and attached with a script. has anyone gotten this far?

02 February 2003, 07:05 AM

I am wondering what type of constraint is optimal. When it comes to re-using the rig I wonder...

I don't like the fact that geometry constraints kinda float as the overall model changes (instead of sticking to where they are attached) sometime they are inconsistent over time... but maybe I haven't worked with them enough to know. If they are attach via a animation path then it might be easier to capture poses and store them (from the relative position on the path??)

02 February 2003, 10:34 AM
Ok rhythmone,

1 - I noticed on the gollum animation that you have the outter mouth paths coming together at the corners. Would it not make more sense to wraps those around so that you could form the big bowing vertical creases that happen outside the corners of the mouth? Was curious as to your thoughts here.

The rig itself relies on 12 main mouth controls:2 com controls and 10 lip controls witch translate across paths but can also rotate to give pukka control. 2 nose controls give snall.8 eyelid controls and 7 brow controls. Everything else links these together via, skinning and points on m-lines (paths). The parts ie cheeks were rigged up
specific to this model, and tweaking to suit another model is fine the key things that stay thoughout are the main controls.

These cheek controls dont follow edges as do the mouth controls.
They just attach from the rim eye(bone) to the com. Also there are layer m-llines which are constrained onto other muscle groups. As with real life, several muscles lie across each other this is why you get creases. I.e cheek. The rig itself dosent look at the mesh. It relies on muscles of the face. Thats why there soo many m-lines on the nose.

Here a few bits of research i used:

2 - What is going on with the blue curves under the eyes, and how are they related to the other control elements going on

They control the lower eyelid base and also pull cheek/nose m-lines across the face.

3*** - So far this is working really well with Maya subDs, which allows for multiple resolutions of the controls. Not knowing that much about actual anatomy I wonder if you (or anyone else) could post the most essential controls necessary for high level deformations. Like for the nose you have alot of control paths next to each other tight. With subds you can go for the same thing by simply driving the coarser resolution (so I'm thinking that I can get the same overall with 1 coarse path and maybe 2 higher rez paths)

I dont understand? coarse paths? what?

4 - I have been thinking about re-purposing, I wonder if it makes sense to incorporate alot of nulls (which you could parent new faces to quickly for reuse/reassembly) or if somehow the rig could be generated and attached with a script. has anyone gotten this far?

Thats a future thing, at the minute is on propietry.

I don't like the fact that geometry constraints kinda float as the overall model changes (instead of sticking to where they are attached) sometime they are inconsistent over time...

I apply the rig to one mesh, make an instant and use that for all main translates/rotation. So in one view i always have the head facing me.

The tutorial will be a video tutorial. Ive got a friend to post it for me.


ivo D
02 February 2003, 02:57 PM
yea ..maybe a irritating question..

but when is the tutorial comming..

im like a noob at animation , just modelling stuff at the moment

and i want to make a good start with your tut..

and hope its a good explanation for mee.. , so i can just begin with that.. and learn much of it.

03 March 2003, 06:39 AM
I dont understand? coarse paths? what?

With the Maya subdivisions you have multiple resolutions of CVs that you can manipulate... so right now I am setting it up with 4 main forehead m_lines and I will try adding more attaching them to next finer level of CV resolution to create subtle creases. I will try to post some stuff as I get closer to illustrate what I am saying.

....thanks for the links

03 March 2003, 07:00 AM
not sure if its been posted here before but theres a buncha stuff on facial setups over at spiraloid. bay raitt posted a link he used while working on gollums face.

03 March 2003, 05:01 PM
Hi Ambient,

Thankyou for the link, Elkmans Facs system is one of the primary systems im using in my facial system.From the word go,i based my rig on Facs. The next phase i.e phenome and expression creation will use it throughout.

Thanks again,


03 March 2003, 04:40 AM
Yeah thanx Ambient.
Those are pretty good references and practices, etc.

I also have a bunch of great facial expression books, both art and imagery.:)

03 March 2003, 10:05 PM
OK - I have been exploring the general use of this technique with Maya's subdivision surfaces.

I am now perplexed as to how to link everything in the hierarchy.

Sithwarlord ... - when I link/group the Maya version that you created it freaks out when translated?? I can't move the overall face.

Matt Leishman
03 March 2003, 10:41 PM
hey rhythmone,

my current quick fix for the transformation problems i'm having is to just make 2 versions of the head geometry. 1 version is to set up the face rig on, and the other version is the head that will be used on the body with the rest of the body rig. the face rig version i will then use as a wrap deformer on the face geometry that is part of the overall body rig. So you have animation control over the facial stuff through the wrap deformer, and the rest of the body control you have through the rest of the body controls. I hope that makes some sense.

I'm sure there is a better way, but i have yet to find the time to figure out how to most efficiently pin point why all the transformation problems (double transforms and such) are happening specifically, and how to correct them. So for now, the wrap deformer method is treating me fine.

hopes that helps some.

03 March 2003, 10:48 AM
Exactly the same way i do it. By the way i'll finish the slider setup this week and send it to the beta users: sith/matt, boxcrash.


p.s also found a way of blending poses using mcomets attrkey script!

03 March 2003, 11:04 AM
Hi Eek,

Am I out of the running as a beta tester now? :sad:



03 March 2003, 11:07 AM
forgot to add you, no you are one of the beta testers.Its gunna be in max 5 i think.


ivo D
03 March 2003, 12:12 PM
cant wait till its finished.. and i can dive into that tutorial of yours ,and suck all the information into my brain :surprised :buttrock: :D


03 March 2003, 12:07 AM
Put me on the top of the list for the Maya Beta test!:wavey: :bowdown:

03 March 2003, 09:58 AM
Hi dflipb,

I think that 'ill be matt/siths department after he/I have tested the max beta.


03 March 2003, 02:16 PM
Originally posted by eek
setup this week and send it to the beta users: sith/matt, boxcrash.

sweet. Thanx.:) :thumbsup:

03 March 2003, 01:19 AM
Cool, who ever it is. I am all about it!:deal:

ivo D
03 March 2003, 11:58 AM
eek you send mee a msg.. for testing..

srry i saw it so late..but i would.. still love to.. take a look at it

caus im the ultimate noob at this.. and maybe.. can target things.. that are very complicated for the beginner..

caus maybe one of the most important things in the tut..
must be..

that it doesnt give the idear.. of shit.. whats thit!!..what does he mean with that etc :p :rolleyes:

you rule!:buttrock: :applause:

03 March 2003, 07:15 AM
After watching the m-lines.avi, a few questions if I may

1. The blue locators on both side of the mouth are they position contrained (maya term) to the jaw locator or are they able to move freely, ie not constrained or are they somehow parented to the jaw locator.

2. For the green boxes on the cheek, nose and jaw are they able to be moved freely eg.via sliders (but still constrained to the m-lines) or are they all position constrained to the mouth-side blue locators.

3. What are the white boxes between the top lip and bottom lip green boxes. And what do they do?

Thank you very much, and sorry for the many questions.

BTW you :buttrock: hehehe

03 March 2003, 09:59 AM
Hi Pusher,

1. The blue locators on both side of the mouth are they position contrained (maya term) to the jaw locator or are they able to move freely, ie not constrained or are they somehow parented to the jaw locator.

There parented to the jaw locator but also move freely around the face.

2. For the green boxes on the cheek, nose and jaw are they able to be moved freely eg.via sliders (but still constrained to the m-lines) or are they all position constrained to the mouth-side blue locators.

Basically the cheek m-lines point contrained to the cheek locator where by points (green boxes) slide across these, the skin is linked to these. This is a cut down explanation it get more complicated as constraints layer on top on m-lines etc. The points around the lip as well as move the lip there able to rotate to give pucker/mmm expression.

3. What are the white boxes between the top lip and bottom lip green boxes. And what do they do?

These are very important as they bind the lower face together, they also control each lip top and bottom so you do a 'bite lip' expression. As well as v/f etc

Every key point is controlled by sliders giving about 900 key expression and 4000 finite expressions.


03 March 2003, 10:26 AM
books books books, buy more books!
awasome thread, u guys are good

03 March 2003, 05:22 PM

I have yet to find a way to link the clusters into the hierarchy without everything going crazy whenever the face geometry is translated. I, like sithwarlord, am going to also not fight this anymore and simply not translate any clusters that are created.

... and yes I did try setting them to "relative" ;)

03 March 2003, 10:35 AM
@eek: Cheers that helps alot.

@rhythmone: beside setting the cluster to "relative" you also need to parent it to geometry that will be translated, or just create a box and parent the box to the face first and the cluster to the box after.

oops!, don't forget to freeze the transformation of the box after parenting to the head and if somehow the cluster is still double transformed when the head is translated, just change the input order.

03 March 2003, 10:49 PM

Im just putting in the sliders now... here's a little pic showing you the v/f bottom lip controller making a fff sound.


03 March 2003, 12:19 PM
Hiya eek,
very exciting, if not a little bit confusing. Which leads me to my question, what sort of time period are we looking at for this tutoiral? Sorry for being annoying!!

Assie :bounce:

03 March 2003, 05:13 AM
very excellant eek,

your solution on having white boxes thingie to control v/f shape worked very well for me, I did a little test on this and they worked great for me, Thanks!

for those interested, here is the test file (maya4.5) very simple, the basic is there though :)

03 March 2003, 10:41 AM
Hi Assie,

Its getting there im just ironing out a few bugs/glitches with the mouth area, hopefully adding some more controls.


send a pic i dont have maya.

Also reading up about the gollum rig i heard they modelled 675 key poses! and 9000 finite expression wow! My rig at present can hold about 900 key poses and about 4000 finite poses so its getting there!

My main stumbling block is additive blending of poses made from custom attributes. If anyone knows how, or has any ideas please let me know.


03 March 2003, 05:37 PM

03 March 2003, 06:42 PM
I'm pretty amazed at what you've done so far, and am going to be keeping an eye on it...

I'm a Maya user myself, so am more interested in Matts.....

03 March 2003, 07:25 PM
Hi Hugh,

It's getting there im just ironing out bugs at present. Im on the verge of adding a whole new set of controls driven just from the jaw, so you can open the mouth from the jaw then use all the controllers on top of that! It basically means that you can block out the animation from just jaw opening!!


updates soon!...

03 March 2003, 07:29 PM

Are these updated being integrated into the Maya version at about the same time?

03 March 2003, 09:04 PM

I have already tried what you had suggested as far as the freezing and stuff, it works as long as you don't parent or attach it to the path(which is exactly what is needed in this approach).... actually, check out this thread:

Have you tried translating your whole model yet? I am currently working on a script to attach and unattach this type of rig to a Maya subdivision surface.

03 March 2003, 10:57 PM
This is awesome eek
Makes me think about facial animation rigs a whole new way!
:bounce: :bounce: :bounce:

03 March 2003, 07:09 PM
Hi all,

Here's a video grab of the rig in action, just testing of the new jaw system works.

right-click save target as:


ivo D
03 March 2003, 12:44 AM
it really look cool!!

great..damn.. cant wait for your tut.. really want to learn this stuff.

this way ,when the rig is up.. what i will really have to learn.. damn, ,cant wait.. hope your tut is great ,and can help mee lots.

if i see your rig , like in the vid.. that i saw just.. waah.. awsome.. could play hours with that face.. making cool expressions !!! waah neat!

looks kindah easy to.. , to position the movement of the face ..

great job!!

03 March 2003, 02:54 PM
Hi Ivo,
The setups now stable enough, to be applied to virtually any character, the other nice thing is that you can make it as simple or complicated as you want to suit your needs.


If you ever look at this post, or if someone knows you it would be great for you to be a beta tester.

At this stage, i have a possible blending system. Its michael comets attribute keyer script for max 5. And if you see this thread michael it would be great if you could help me with this issue, as i'm rubbish with scripting.

Also this threads gunna be going into overdrive these coming weeks as i'll be posting 'how to's' for the rig.


ivo D
03 March 2003, 02:56 PM
aah cool cant wait.. :)

.. im looking forward.. when its all finished:)

03 March 2003, 03:06 PM
Looking forward to hearing all about it!

I'm developing a facial animation rig at the moment... May well use this system...

03 March 2003, 02:14 PM
Wow 5 stars!!,

I can't believe it, thankyou everyone who's taken an intrest in the rig, and for cgtalk to let me turn an idea into reality. Thankyou all, more will definately come!...


03 March 2003, 04:11 PM
I use blendshapes and a mouth joint system. I find that if i get one side of the face completed the other side goes really quickly.

If you duplicate the head, scale the duplicate to -1 on the x or z axis (depending on what you are using) then point snap the duplicates vertices to the original mesh. That way you get the same EXACT expression on both sides of the face.

Matt Leishman
03 March 2003, 06:02 PM
hey, good to see another Utah resident in this thread.

I used to use a very similar approach to setting up face rigs, but my big beef with that is that you are still very constrained and limited to the use of your jaw joint and how it mixes with your 20 morph targets. That's just not enough control over facial expressions that i'm looking for.

Eek's facial rig really helped me see that there are relatively easy ways of setting up systems that can generate almost unlimited amounts of facial shapes.

But I am also a big supporter of the "do what you are most comfortable with" attitude.

So there you have my 2 cents on the issue.

03 March 2003, 06:58 PM
Hi sith,

It's all about pushing the software as far as it will, then seeing if it breaks! if it's stable then great.. And finally my systems stable enough to transfer to other characters.I'll start posting tutorials on it next week!


03 March 2003, 08:03 PM
I just picked up on this thread and finally gotten through the whole thing. Will gladly look forward to any tutorials on your rig, eek.


03 March 2003, 05:59 PM
yeah eek !

despearately waiting for ur great tutorial !

04 April 2003, 02:53 AM
Still going down the Maya path with this approach... and I keep getting stuck on a few things in my mind.

1 - is an m-line 1 curve for both the upper and lower lip. (vs. 2 curves that roughly overlap each other)... if so, why 1 vs 2.

2- also, if so... are there 2 white boxes (v/f control) for each line.... 1 for the upper lip and 1 for the lower.

3 - to me, part of the difficulty of a mouth is when the lips are closed, creating a seal between the upper and lower lips, and I have thought about how to control this but its alot to hold in my mind.

4 - how is it that the jaw drives the lower lip and not so much the upper lip... is this parented?

04 April 2003, 10:00 AM
Hi rhythmone,

1 - is an m-line 1 curve for both the upper and lower lip. (vs. 2 curves that roughly overlap each other)... if so, why 1 vs 2.

I tried, the first approach when i started the rig i.e 1 curve for both top and lower lips, but found i needed to have independent control for top and bottom, so basically I have 2 sets of curves, one for upper controls and one for lower controls, and as you pointed out yes i do have a v/f controller for both sets, to control them independently.

3 - to me, part of the difficulty of a mouth is when the lips are closed, creating a seal between the upper and lower lips, and I have thought about how to control this but its alot to hold in my mind.

4 - how is it that the jaw drives the lower lip and not so much the upper lip... is this parented?

Ive now implemented an expression layer over the top of the rig, which basically enables me to open the mouth just with the jaw control, but still give me control to move the lips around, its pretty complicated, and uses constraints on top of expressions. The the problem with the mouth closing ...mmm the new layer should fix that problem as you close the mouth as tight as possible.

This expression basically says, to constrain a point between 2 other points but to have different persentages on different axis i.e
x = 50/50
y = 50/50
z = 50/50/2
and this middle point is what the v/f controls a linked to.

The hardest part of this is getting the right formula, and takes a bit thinking e.g a dog face has a long snout so the v/f controls arnt gunna move much when you push the corners of the mouth control.

I'll try a build a maya setup, some time. One question rythmone are you using clusters to link the vertexs of the face to the points on the m-lines, as when i did this the rig slowed down a lot, or are you using smooth/rigid bind and using the point on the m-lines as bones.


04 April 2003, 08:04 PM
One question rythmone are you using clusters to link the vertexs of the face to the points on the m-lines, as when i did this the rig slowed down a lot, or are you using smooth/rigid bind and using the point on the m-lines as bones.

I am using clusters on a subD surface level 0 (meaning the highest level of deformation.... kinda like a real rough wrap deformer) This is working well for me so far(but of course you need to make sure that the subD model is very efficient in its core design).... these clusters are being parented to nulls that are animation path constrained to the m-lines..... I like the animation path constraint vs. geo constraint so far because every expression becomes a 0-100% slider like control along the m-line.

I really am trying to get to a point where I can post some pics to show this approach with subDs... so far I have the most of it done except for the mouth (lol... most complicated part).... but I have managed to script the application of the rig so that it can be attached and unattached... and of course reapplicable to other characters.

Thanks for that last post.... I kept finding myself thinking that it had to be 2 curves... and knowing that you had to use an expression with the jaw also gives me comfort cause I didn't see how to do it otherwise.

PS - I also have it driving wrinkles... pretty frickin cool :thumbsup:

04 April 2003, 08:55 AM
Hi Rhythmone,

Sounds like your version, is identical to my Facer setup as your using a SubdD level 0. About the wrinkles, i might add those today, some time. Max is great for attaching and reattaching stuff, its just a skin modifier! As we both point out its really important to have a clean mesh that supports edge loops etc.

The 2 curve approach is key to give a wide range of expressions.
My main stumbling block is making poses using the sliders and additively blending them to make poses, i need to script it really but am rubbish at this. The jaw expression, is really important and defines how the rig works.

Also the rig may go into a production state soon, as im putting it into a mouse.


04 April 2003, 06:39 PM
My main stumbling block is making poses using the sliders and additively blending them to make poses,

Exactly.... that is why I have been so focused on the motionPath issue. It creates a situation where all adjustments are percentage based which provides three significant tools.

1 - If you scale the rig and apply it to another character, then all relevant expressions will still be proportionally the same.

2 - blending multiple poses become much more scriptable.
i.e. (expr_smile * .5) * (expr_glee * .5)
getAttr smile.slider
getAttr glee.slider
add together and divide by 2

3 - Expressions can be saved out to external files for use across multiple scenes.

Plus in my case, like for the corner of the eye I take the percentage of the squint of the corner path and plug that directly into the wrinkle envelope... ..... convenient.:airguitar

04 April 2003, 08:59 PM
Originally posted by rhythmone
Exactly.... that is why I have been so focused on the motionPath issue. It creates a situation where all adjustments are percentage based which provides three significant tools.

1 - If you scale the rig and apply it to another character, then all relevant expressions will still be proportionally the same.

2 - blending multiple poses become much more scriptable.
i.e. (expr_smile * .5) * (expr_glee * .5)
getAttr smile.slider
getAttr glee.slider
add together and divide by 2

3 - Expressions can be saved out to external files for use across multiple scenes.

Plus in my case, like for the corner of the eye I take the percentage of the squint of the corner path and plug that directly into the wrinkle envelope... ..... convenient.:airguitar

i think wetas facial system is rather close to what you described there.

04 April 2003, 09:17 PM
Hi Rthymone,

I think we both on the same stumbling block, the rig itself relies on two main key controls, i.e jaw, and slider based persentage driven. These can both be scripted into a pose based system, basically different sets i.e eyes, brow, nose and mouth which each have poses. So you can make and oooh shape with the mouth and a frown with the eyes/brow, but addivitive affect ? i.e pushing a shape onto of another like making an ohh -> ooohh. Elkman FACs talks about muscle groups a combination of these group in terms of strength i.e a,b,c,d,e. Now do we create poses with the highest strength so we can always blend down, not needing to worry about additive affect. Im breaking up the rig into areas specifically for this reason, because say you make an ohhh pose, then a blink how does the blink additively affect the ohhh, so you get a ohhh+blink. Because otherwise one will overwrite the other.

mmmm? ill have a think.


04 April 2003, 10:20 PM
This is the system where aiming at! But it takes time, and brain power!!


04 April 2003, 10:56 PM
Because otherwise one will overwrite the other

I haven't spent alot of time thinking of potential problems.... but here are my thoughts.

1 - There definately needs to be an object oriented / parented base relationship to each pose. ...kinda like the node structure in maya. That way you are litterally blending the values of subvalues.

2 - I also think that there may be value in defining a default/nuetral pose that would allow the script to know if the pose value is different.... this make it possible to not have the eye blink affect the mouth.
:shame: :shame:
You know what, this is all just talk, I'm going to stop blabbing... I need to hurry up and catch up to you so that I can help... I am having to write scripts that create every part of the rig, its too much to do by hand... and that is taking time... also I keep optimizing my core subD model. I plan on spending some serious time on this now.... hopefully I will have something later today... right now I need to learn how to create animation expressions through scripting.

04 April 2003, 12:20 AM
OK - here is what I was trying to get out earlier.

If there is at least a 2 level approach to the values then you can arrive at an additive affect (also assumes percentage based values?? maybe, maybe not??)

So you have a pose smile:
mouth_open = .3
mouth_cornerup = .7
eye_close = 0

Then your slider references those and hits them with another percentage calculation.
slider_smile = .7

so the output vals are:
mouth_open = .21
mouth_cornerup = .49
eye_close = 0

...then you could add those to a whole other pose/slider set.
add slider_glee output
mouth_open = .35
mouth_cornerup = .21
eye_close = .5

and your final vals for the combined poses are:
mouth_open = .56
mouth_cornerup = .70
eye_close = .5

make sense?? The other cool thing about this approach is that if the curves are setup right then you can lock down the max, 100%, which means that your final output would not exceed a value of 1

04 April 2003, 09:12 AM
Hi rthymone,

Scripting the rig, JEEZ!, man i just re build it onto other characters renaming each control. Anyway i think i understand,

If there is at least a 2 level approach to the values then you can arrive at an additive affect (also assumes percentage based values?? maybe, maybe not??)

Not every control runs along m-lines e.g the corner of mouth,jaw control there just points that are parented but i when every thing gets turned into sliders it gives out a value of 0 -100 in most cases,well on every m-line it does this but for controls such as corners of the mouth where you need them to go all over the place then i need my sliders to go into minus values, except if it's starting value is 50%.

I think im starting to uderstand this idea, im gunna do a simple test this morning just hard core a script to see if i can get the affect to work.

What if you want to go mouth open to close, because say mouth open is .90 and mouth close is .0 then the additve effect will be .90 keeping the mouth open.


04 April 2003, 07:23 PM
Yeah, I was thinking about this more last night and there is definately some need for negative values... I am not sure how to deal with that yet, it could be that the sliders zero value actually gets translated into a .5 value as a nuetral state... so your mouth open and close scenario get driven by positive and negative values, yet they output an absolute value....

I think it is important to remember (as I find that I have to keep reminding myself), that the slider values are what is additive., and the subvalues, or actual values that get applied are different.... hence the two level structure.

Also, I think that there will be cases where it makes sense to reverse the actual slider value. (i.e. slider +10 actually ends up outputing -1)... and I think that this would solve some scenarios.

I managed to complete a pretty intensive script last night so I do believe that I am catching up to you.

Also, I do see your point about the mouth corners... they do need to be free.... so I am thinking that there translated value might need to be relative... like a percentage distance from the jaw pivot point, or something along those lines.

Can you elaborate on how you set up your constraints for the nose. I notice in your movie that when the jaw rotates and the mouths opens, that the nose lines stretch slightly down and out. Did you find certain optimal points that nulls have to be in order to act as point constraints?

04 April 2003, 08:06 PM
Hi Rthymone,

Basically the nose just relies on good edge loop topology and a simple position constraints, and good skinning. Ive started (very bad at scripting) to script a pose maker, very basic at first but getting there called LAMv0.1(look at me).


04 April 2003, 05:06 AM
Well, if you need any help... I am pretty good at scripting. Email me if you want (, and I can help with the general logic (that is what my background is in).... I can show you how to systematically go about it, etc...

04 April 2003, 09:57 AM
Hi Rthymone/charles,

It's getting there i'm using max for the rig/scripting and any help woud be great.I pulled of my first pose yesterday waay! from a neutral state to frown, in a slider. Basically i didnt turn the path constraints into sliders but directly scripted them into a slider pose, so you can still move then in the viewport! I need a way of say get percentage now after its been affected by slider.

Basically a need to make a really basic script with simple objects, to show off the idea, then i can apply it to the rig.