PDA

View Full Version : BlendShapes and jaw setup


mgrawert
05-19-2003, 12:05 AM
Is there any way to set up the jaw bone to rotate open with blendshapes. I've tried set driven key but the rotation values add on to each others as more blend shape combinations are used to create the facial expression and the jaw bone joint rotates too far.:rolleyes:

Matt Leishman
05-19-2003, 07:09 AM
I can't be sure that this is going to solve your problem because I'm not totally clear as to what the issue really is. But you may want to try changing the deformation order on the head geometry so that maya is recognizing the blendshape deformations before it is recognizing the joint deformations (ie the jaw joint). Just a thought. :hmm:

mgrawert
05-19-2003, 08:15 AM
sorry about the mixup, let me try to explain the problem more clearly. I want to be able to have a set driven key in which when i increase the blendshape the jaw rotates to the given position for the mouth shape that is being used. The problem is when i set up the set driven key the joint rotation that is being driven by the blendshape compiles each rotation value on top of one another. So if several blendshapes are being used at one time to create the mouthshapes all of their set driven key rotations are adding up and going way past the desired jaw rotation. Is there a way to stop the values from adding up on one another so that the jaw rotates smoothly between mouth shapes.

AnimBot
05-19-2003, 05:02 PM
mgrawert this is an issue I am dealing with right now. I've gone about this a different way but my solution doesn't quite work either. I've been trying to apply a method that I use in max where I create the jaw bone with Ik. I then constrain the IK handle to a face inside the mouth. Of course it should be a face that is always being deformed in any give blend shape/morph target. This works really well in max because you can contsrain it to a specific face. I haven't however found the equivilent in Maya I posted a thread on this topic a while back but I never got a good answer on how I could do this and I'm still pretty new to Maya so it's been rough figuring it out on my own. The closest thing I got was to use a geometry constraint. However since that only uses the closest geometry to the object that's being constrained you often end up with some pretty unfavorable results. If someone knows of a melscript or something that will constrain an object to a specified face I'd really apreciate it.

nottoshabi
05-20-2003, 12:21 AM
I'm a little confused about the jaw joint with blend shapes.
I have used blend heads lots of times and I never found the need for the jaw bone I simply never put it there. I just bound the head normaly and everything else worked on its self.

AnimBot
05-20-2003, 01:05 AM
nottoshabi I always use the jawbone for parenting the teeth and tongue to it. If you are able to have the jawbone move with the blendshapes automatically then you don't have to worry about animating the teeth and tongue seperately.

nottoshabi
05-20-2003, 02:41 AM
I leave the teeth in the blends as one mesh, if tong is need then I put a null and attach it to that. I try to keep Maya's deformation paths as clean as posible if I need a jaw bone then I dont bind the head to the bone, I leave that chain of bones out. I found this way to be cleaner further down the line.

AnimBot
05-20-2003, 03:46 AM
Like I said It's a method I used in max I just assumed I'd be able to use it in Maya maybe I was mistaken. The reason I like this way is because it's much quicker and easier to create the shapes without having to worry about whether or not I accidentally selected the teeth causing them to deform when they shouldn't. I also don't use the bone for deformation purposes again it's just to guide the teeth and tongue.

Xoch
05-23-2003, 12:00 AM
The way it could be done is writing a script that will drive the rotation of the jawbone based on the average of the rotation values given by the different blendshapes used at that time. While it will not be perfect and you probably need to tweak the script for some extreme combo's, it will come close to what you need I think.

mgrawert
05-23-2003, 01:20 AM
I figured that a script would have to be used, but i know very little about mel. If someone could help get the script started I think I would be able to figue out the rest of it.

Xoch
05-23-2003, 08:57 AM
I'll see what I can come up with today. I'm a (Mel) scripting newbie so I'm not sure how it turns out.

magilla
05-28-2003, 03:09 AM
Animbot - could you use a cluster with an aim constraint - instead of the face and geometry constraint?

--magilla

umjetnik
05-28-2003, 03:53 PM
Originally posted by AnimBot
mgrawert this is an issue I am dealing with right now. I've gone about this a different way but my solution doesn't quite work either. I've been trying to apply a method that I use in max where I create the jaw bone with Ik. I then constrain the IK handle to a face inside the mouth. Of course it should be a face that is always being deformed in any give blend shape/morph target. This works really well in max because you can contsrain it to a specific face. I haven't however found the equivilent in Maya I posted a thread on this topic a while back but I never got a good answer on how I could do this and I'm still pretty new to Maya so it's been rough figuring it out on my own. The closest thing I got was to use a geometry constraint. However since that only uses the closest geometry to the object that's being constrained you often end up with some pretty unfavorable results. If someone knows of a melscript or something that will constrain an object to a specified face I'd really apreciate it.

there is a script on highend called Rivet, which may solve your problem, all you need do is parent your ik to the locator that is generated. when you run the script,...its all there in the instructions ( the locator is "riveted" to a specific point on surface if I recall correctly,...handy little script ). Hope it helps

Stahlberg
06-08-2003, 06:13 AM
Is there any possible way you could do without the jawbone? Since it seems it's only giving you trouble, and IMHO is not bringing you much of anything positive. Why do you use it? To get a more realistic, curved movement?

But the jaw only opens about 10 - 15 degrees in extremes (hard to measure in angles because the hinge drops as it rotates, producing a kind of J shaped trajectory). And we hardly EVER use the extreme in animation.
This all means that the difference between the real curved trajectory and the linear one produced by a Blendshape is only a few millimeters at max deviance in 99% of all the animation, if you plan it properly.
And - since we're usually looking at the jaw at some other angle than perfect profile, those millimeters become even shorter in perspective - zero if viewed straight from the front.

Or do you use the bone to make sure the lower teeth and tongue move perfectly with the jaw? I simply rotate the teeth and tongue from a pivot point further back than the jaw hinge, at the neck - this gives them the flatter trajectory you see in real life (since as I mentioned the hinge drops as it rotates). Then I SetDrivenKey the rotation of the teeth and tongue to the Blendshape I call Gape. And I've never had any problems with the teeth sliding in relation to the jaw, or anything like that.

CGTalk Moderation
01-15-2006, 05:03 AM
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.