View Full Version : Curve driven joint lip sync

12 December 2003, 12:31 AM
Has anyone ever created a facial rig that had the lips deformed by joints that were driven by a curve and constrained to that curve so that you could scale the curve and have all the joints move along with the scale?

I have been trying this with minimal success. I have tried simply gemoetry constraining the joints to the curve, which works except that the joints tend to migrate up and down the curve depending on how you move it. I have also tried using point on curve but that is even more limiting.

If anyone has done this I would love a quick run through on how to get it to work!!


12 December 2003, 01:06 AM
I have done this...

use "attach to motion path" then you have the option to use parametric lenght, or not.
that will stop you "migration"...

12 December 2003, 06:41 AM
if i understand what u want .. this file should explain the joints->mouth curve ctrl

mouthJoints_test.mb maya 5.01

Matt Leishman
12 December 2003, 03:30 AM
I've done something extremely similar to this (if i'm understanding you appropriately).

I attach a cluster to some points on the lip geometry. then this cluster is geometry contrained to the curve (my curves go vertical from the base of the nose to down below the chin), and then a point on curve deformer is placed on the curve and the cluster (which has been geometry constrained to the curve) is then parented to the point on curve deformer. Then the point on curve deformer can be translated anywhere you want, and the additional movement of the cluster itself can be controlled via driven keys or whatever method you want.

So you have localized control over the deformation of that particular area of the lips (due to the cluster moving along the curve), but you also have the power to move that deformation anywhere you want through translating the point on curve deformer.

hope that makes a little sense.

12 December 2003, 08:00 AM
As a slightly different yet similar idea you could also do this, which I use now for my character:

after you skin your character, with no bones in the face for facial animation, draw out a curve along the brow or lip or whatever using the snap to points tool to snap it to the mesh. then you can turn the curve into an influence object. then you create a cluster out of groups of curve points or even single curve points and use those to deform the face. when you make the clusters make sure they have "relative" turned on. also you will have to make sure you enable components which is under the curve options i think somewhere after youve made it an influence object. this allows it to use the clusters/curve points to animate instead of just the whole curve.

If you paint your weights carefully you can get the same results as if you used bones. You can use as many curves as you want in the face wherever you want motion. I use one on the top lip, on on the bottom, 2 per eyelid for a blink, and 2 in the forehead for expressions there, but you could use more in the cheek area for more motion or whatever you wanted.

Once all that is done i just use a sdk to setup phenomes or expressions.

Its a lot easier than blendshapes and i think a little easier to control than bones.

Food for thought


CGTalk Moderation
01 January 2006, 08:00 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.