All in one "head turn" mouth rig with one bone
Moderators: Víctor Paredes, Belgarath, slowtiger
All in one "head turn" mouth rig with one bone
I discovered this sort of by accident while fiddling around with my mouth rig.
Movie:
http://www.lowrestv.com/moho_stuff/pers ... th_rig.mov
Moho file:
http://www.lowrestv.com/moho_stuff/pers ... h_rig.moho
It uses a lot of constrained bones but the whole thing is controlled with one bone. The bottom lip bone (blc). Move this bone up and down to close and open the mouth and side to side to control the angle. So you can lip sync and turn at the same time.
This is really really rough. I spent no time adjusting the lip mesh and tweaking the bones or the constraints. It works pretty good for 3/4 views. With some tweaking and maybe a few more bones it might even be able to do a full side view. I plan to play some more with it and see if I can find a way to do more "elaborate" mouth positions.
It would work well for simple really fast lip sync. Just one bone translation. Just one bone's key frame. I like it.
-vern
Movie:
http://www.lowrestv.com/moho_stuff/pers ... th_rig.mov
Moho file:
http://www.lowrestv.com/moho_stuff/pers ... h_rig.moho
It uses a lot of constrained bones but the whole thing is controlled with one bone. The bottom lip bone (blc). Move this bone up and down to close and open the mouth and side to side to control the angle. So you can lip sync and turn at the same time.
This is really really rough. I spent no time adjusting the lip mesh and tweaking the bones or the constraints. It works pretty good for 3/4 views. With some tweaking and maybe a few more bones it might even be able to do a full side view. I plan to play some more with it and see if I can find a way to do more "elaborate" mouth positions.
It would work well for simple really fast lip sync. Just one bone translation. Just one bone's key frame. I like it.
-vern
Congratulations for your riggided mouth ant its rotation. The problem with this is that the constrains values depends on the quantity of bones you have putted and the separation between them. So the magic value (0.7 in your case) for horizontal turn have to be discovered for every new shape or skeleton of the lips. The relative vertical movement shlud be valid and is easier to achieve.
Anyway thanks for your tip.
Anyway thanks for your tip.
Well... yeah of course. Each project is going to have specific needs.
However for this sample I just put those lips into a bone folder for a completely different character's mouth shape without even tweaking the bones. I was lucky and the bones lined up with the lips.
Finding that "perfect" number for the rotation only took a few minutes. It's always trial and error with constraints. Actually I usually put in negative numbers for left and right so that the mouth can be squished and stretched for different positions. I forgot to put in the negative numbers and the darn thing rotated nicely, without even trying. It looked so cool I couldn't resist.
The bigger problem is that the rotation isn't centered on the "head". The constraints would need to be tweaked or the layer translated during the turns.
-vern
However for this sample I just put those lips into a bone folder for a completely different character's mouth shape without even tweaking the bones. I was lucky and the bones lined up with the lips.
Finding that "perfect" number for the rotation only took a few minutes. It's always trial and error with constraints. Actually I usually put in negative numbers for left and right so that the mouth can be squished and stretched for different positions. I forgot to put in the negative numbers and the darn thing rotated nicely, without even trying. It looked so cool I couldn't resist.
The bigger problem is that the rotation isn't centered on the "head". The constraints would need to be tweaked or the layer translated during the turns.
-vern
Coninuing with this particular mouth project and my desire to have multiple controls I have added in a double set of lip bones that are identical to the first set that control the "turn".
The second set has "symmetrical" constraints that control the scale or side to side scale of the mouth independently from the turn or perspective controls.
This has got me kind of excited. I have found by doing this I finally can have independent multiple constrained bones to the same mesh points. In my example below I added shapes bound to the control bones so they show in the animation.
Movie: (Works best if you scrub through the animation slowly to see the bone motion)
http://www.lowrestv.com/moho_stuff/pers ... h_rig2.mov
Moho file:
http://www.lowrestv.com/moho_stuff/pers ... _rig2.moho
Think about this for a minute... I could have individual "lip bones" in addition to the ones there that control specific parts of the lips for creating unique mouth shapes. The "global" bone controls would still turn and open and close the mouth, while these other bones could push and pull the lips into different positions.
That's my next experiment.
EDIT:
Holy cow. I just thought of this. Suppose you created "nested actions" for lip sync. You could do lip sync using actions on one set of bones and turn the head with another bone without effecting the lip sync. The mind boggles.
-vern
The second set has "symmetrical" constraints that control the scale or side to side scale of the mouth independently from the turn or perspective controls.
This has got me kind of excited. I have found by doing this I finally can have independent multiple constrained bones to the same mesh points. In my example below I added shapes bound to the control bones so they show in the animation.
Movie: (Works best if you scrub through the animation slowly to see the bone motion)
http://www.lowrestv.com/moho_stuff/pers ... h_rig2.mov
Moho file:
http://www.lowrestv.com/moho_stuff/pers ... _rig2.moho
Think about this for a minute... I could have individual "lip bones" in addition to the ones there that control specific parts of the lips for creating unique mouth shapes. The "global" bone controls would still turn and open and close the mouth, while these other bones could push and pull the lips into different positions.
That's my next experiment.
EDIT:
Holy cow. I just thought of this. Suppose you created "nested actions" for lip sync. You could do lip sync using actions on one set of bones and turn the head with another bone without effecting the lip sync. The mind boggles.
-vern
I've been playing around with some more.
First thing, good news! I figured out how to easily change the "rotation axis". I haven't uploaded it yet but I can change the turning axis so it is more "head" pivot. The center of rotation isn't on the front of the lips.
The bad news... all those bones. I was trying to put in some bones for lip distortion and found that though it works, those bones are still influencing the mesh and they don't really follow the other bones so this causes some unwanted distortions.
The concept is still viable but I may have to take it all apart and change how the constraints control "talking". Currently both control bones make the mouth go up and down. I need to eliminate that somehow and have just one bone do the turn and another go up and down. This is another problem since you can only set a direction of movement to "0" on a constraint it sill has an effect. If set to "0" the bone won't move at all in that direction instead of just having no influence.
It would be great if you could have one bone control vertical and another horizontal. that is the problem. When the vertical is set to 0 it still controls that motion by not moving.
hmm... have to play some more.
-vern
First thing, good news! I figured out how to easily change the "rotation axis". I haven't uploaded it yet but I can change the turning axis so it is more "head" pivot. The center of rotation isn't on the front of the lips.
The bad news... all those bones. I was trying to put in some bones for lip distortion and found that though it works, those bones are still influencing the mesh and they don't really follow the other bones so this causes some unwanted distortions.
The concept is still viable but I may have to take it all apart and change how the constraints control "talking". Currently both control bones make the mouth go up and down. I need to eliminate that somehow and have just one bone do the turn and another go up and down. This is another problem since you can only set a direction of movement to "0" on a constraint it sill has an effect. If set to "0" the bone won't move at all in that direction instead of just having no influence.
It would be great if you could have one bone control vertical and another horizontal. that is the problem. When the vertical is set to 0 it still controls that motion by not moving.
hmm... have to play some more.
-vern
Horizontal and vertical independent movement of a shape with bones is not a problem.
You can make a chain where the last bone controls one movement (horizontal for instance) and its root bone the other (vertical in this case).
The best way to obtain benefits of this simple setup is to use actions.
With two actions adt its reverses you can control horizontal and vertical movements independent.
See this file. Perhaps it helps.
http://amanoalzada.iespana.es/Mohostuff/horiz-vert.anme
You can make a chain where the last bone controls one movement (horizontal for instance) and its root bone the other (vertical in this case).
The best way to obtain benefits of this simple setup is to use actions.
With two actions adt its reverses you can control horizontal and vertical movements independent.
See this file. Perhaps it helps.
http://amanoalzada.iespana.es/Mohostuff/horiz-vert.anme
Thanks Genete!
D'oh!
Of course! I'm actually using that sort of thing with the lips! The root bone is getting the translation constraint from the control bone. All the little lip bones are children of the first lip bone and I use the first bone for those constraint targets.
That was how I changed the axis of rotation. I changed the first lip bone to a negative value from the control bone and I changed the lip bone children to negative values or just opposite depending on which side they are on. (which kind of switches back to positive in a way) and it shifted the axis. The root bone moves opposite of the control bone and the root bones children move the other way creating the illusion of an axis point more in the center... The axis of rotation can be adjusted by changing only the value of the constraint on the lip parent bones since all the other bones go off that one.
uh... I think that's what I did... have to check the file. This gets confusing if you lose track. Thank goodness I can turn off those controlled bones while animating.
-vern
D'oh!
Of course! I'm actually using that sort of thing with the lips! The root bone is getting the translation constraint from the control bone. All the little lip bones are children of the first lip bone and I use the first bone for those constraint targets.
That was how I changed the axis of rotation. I changed the first lip bone to a negative value from the control bone and I changed the lip bone children to negative values or just opposite depending on which side they are on. (which kind of switches back to positive in a way) and it shifted the axis. The root bone moves opposite of the control bone and the root bones children move the other way creating the illusion of an axis point more in the center... The axis of rotation can be adjusted by changing only the value of the constraint on the lip parent bones since all the other bones go off that one.
uh... I think that's what I did... have to check the file. This gets confusing if you lose track. Thank goodness I can turn off those controlled bones while animating.
-vern
Please view this sample for what it is. A down and dirty test file. This is an ugly head with hideous lips. But the general concept is there.
http://www.lowrestv.com/moho_stuff/pers ... h_rig4.mov
The key to this is that with additional tweaking and adding of bones a very usable completely bone based head turn and lip sync face can actually work.
I left the bone highlighting on in this movie file. All the lip sync and head turn is done with only 2 bones. Just 2 bones. No switches no point motion.
I know it is ugly right now but the potential is there. One of the things I find is that if you can make the animation process as simple and fluid as possible you don't spend as much time trying to getting each position perfect. I find I have a more fluid process without having to tweak a million things while trying to get the motion right. This is just me of course. I don't want to say this type of thing is for everyone. It is a TON of effort to set up, but the end results are a piece of cake to animate.
2 bones, lip sync and head turn. I love it.
I will post the Moho file as soon as I clean it up a bit. I got carried away and stopped renaming bones... I have a lot of bones with really good names like, 47 and 33 or 25 and 16. Not very informative.
-vern
http://www.lowrestv.com/moho_stuff/pers ... h_rig4.mov
The key to this is that with additional tweaking and adding of bones a very usable completely bone based head turn and lip sync face can actually work.
I left the bone highlighting on in this movie file. All the lip sync and head turn is done with only 2 bones. Just 2 bones. No switches no point motion.
I know it is ugly right now but the potential is there. One of the things I find is that if you can make the animation process as simple and fluid as possible you don't spend as much time trying to getting each position perfect. I find I have a more fluid process without having to tweak a million things while trying to get the motion right. This is just me of course. I don't want to say this type of thing is for everyone. It is a TON of effort to set up, but the end results are a piece of cake to animate.
2 bones, lip sync and head turn. I love it.
I will post the Moho file as soon as I clean it up a bit. I got carried away and stopped renaming bones... I have a lot of bones with really good names like, 47 and 33 or 25 and 16. Not very informative.
-vern
- Víctor Paredes
- Site Admin
- Posts: 5660
- Joined: Wed Jan 26, 2005 12:18 am
- Location: Barcelona/Chile
- Contact:
wow, heyvern, you and genete are carring moho to perfection. complex perfection, but wow perfection.
i hope i can still gathering breadcrumbs of your amazing way to see how could bones works. i mean, i haven't the mind to create this things by my self (i try, i try, but...)
thank you. maybe you should present your discoverers to lostmarble as a project to make AS better.
hey LM, take a look of this, please.
i hope i can still gathering breadcrumbs of your amazing way to see how could bones works. i mean, i haven't the mind to create this things by my self (i try, i try, but...)
thank you. maybe you should present your discoverers to lostmarble as a project to make AS better.
hey LM, take a look of this, please.
Here is a new file and a new movie:
movie:
http://www.lowrestv.com/moho_stuff/pers ... h_rig6.mov
Moho file:
http://www.lowrestv.com/moho_stuff/pers ... _rig6.moho
It's still not the best face in the world. I will save that for when I use this with my other characters. At this point I'm still experimenting. There are two vertical lines that indicate the max distance for the head turn bone. I put that in there for my own reference.
I made it so that the turn is separate completely from the mouth opening and closing. This works great because you could do lip sync separately and do head turns at anytime or place in the time line.
I added some smile bones, but that doesn't work so well. When the lip bones are rotated they don't translate the same way. They translate based on the new rotated position which messes up the head turn a bit. It's still usable though.
I am having trouble with "real noses". This technique tends to lean towards symmetrically. So the nose line with a "hook" on the end doesn't work as well with the turn, so I made it just a simple curve. I haven't even done the eyes yet.
I need to add an extra chin bone so that the chin will "stick out" slightly on the turns. I missed that on this version.
Have fun! It is a mess of bones... be careful. Select "hide controlled bones" in the time line.
-vern
movie:
http://www.lowrestv.com/moho_stuff/pers ... h_rig6.mov
Moho file:
http://www.lowrestv.com/moho_stuff/pers ... _rig6.moho
It's still not the best face in the world. I will save that for when I use this with my other characters. At this point I'm still experimenting. There are two vertical lines that indicate the max distance for the head turn bone. I put that in there for my own reference.
I made it so that the turn is separate completely from the mouth opening and closing. This works great because you could do lip sync separately and do head turns at anytime or place in the time line.
I added some smile bones, but that doesn't work so well. When the lip bones are rotated they don't translate the same way. They translate based on the new rotated position which messes up the head turn a bit. It's still usable though.
I am having trouble with "real noses". This technique tends to lean towards symmetrically. So the nose line with a "hook" on the end doesn't work as well with the turn, so I made it just a simple curve. I haven't even done the eyes yet.
I need to add an extra chin bone so that the chin will "stick out" slightly on the turns. I missed that on this version.
Have fun! It is a mess of bones... be careful. Select "hide controlled bones" in the time line.
-vern
Well, I decided to try this technique on a "real" project.
I pulled up an old character I've been working on on and off and slapped in those lip bones.
QT movie:
http://www.lowrestv.com/moho_stuff/ISA_head.mov
I came up with an even better rig. It has more control bones but the controls give more expressions. I added a separate set of bones for the left and right side of the lips and mouth.
Basically I have 6 sets of constrained bones:
the whole upper lip
the whole lower lip and jaw
Left and right sides upper lip
Left and right sides lower lip
Plus left and right side smile bones.
This allows me to do sneers, etc... non symmetrical expressions. But it also allows me to move the entire lips all at once. So if I do a sneer on one side of the mouth I can still raise and lower the lip using the other control.
I still need to work on how the teeth are controlled. I think I may put in separate controls for the teeth. Right now they tend to rise up or down too much. Have to play with it.
Over all this is a lot of fun and very easy to get almost any expression I need just with a few bone translations.
p.s. The eye brows are also controlled with bones, but that is just a simple chain of bones.
-vern
I pulled up an old character I've been working on on and off and slapped in those lip bones.
QT movie:
http://www.lowrestv.com/moho_stuff/ISA_head.mov
I came up with an even better rig. It has more control bones but the controls give more expressions. I added a separate set of bones for the left and right side of the lips and mouth.
Basically I have 6 sets of constrained bones:
the whole upper lip
the whole lower lip and jaw
Left and right sides upper lip
Left and right sides lower lip
Plus left and right side smile bones.
This allows me to do sneers, etc... non symmetrical expressions. But it also allows me to move the entire lips all at once. So if I do a sneer on one side of the mouth I can still raise and lower the lip using the other control.
I still need to work on how the teeth are controlled. I think I may put in separate controls for the teeth. Right now they tend to rise up or down too much. Have to play with it.
Over all this is a lot of fun and very easy to get almost any expression I need just with a few bone translations.
p.s. The eye brows are also controlled with bones, but that is just a simple chain of bones.
-vern