In attempting to recreate Brian Tindall's deformation system, I've been trying a few things that are available to us in Maya to get things to function similar to how its done at Pixar.
Three Curve Principle using Blend Shapes - All three of the small curves add up to the one circular shape you see here. Blend Shapes can also be pushed PAST their value of 0 to 1. For example, the bottom image shows the Overall Blend Shape hitting a -1. These can be pushed past the default values, but it's hard to do such without a set driven key or manually inputting the value.
Curve Driven joint movement is a tasty thought. Pixar often uses Curve "patches" to influence their movers to deform a certain manner. In this case, I wanted a joint to travel up and around the skull, and down and forward, instead of the linear motion a blend shape would give you. I first made a spline curve in the side view.
If you remember the video about the PointOnCurveInfo Node in Maya, it seems there might be an alternative to modifying a node network from placing an object on a motion path. In this case, I placed the Null Object (locator) on the path to animate, then broke the keyframe connection in the channel box so it was no longer dependent on the timeline.
To prevent weird transforms, I first connected the alltransforms attribute of the motion path to the translate attribute of the locator. Next, I deleted the extra addDoubleLinear Nodes to clean it up.
I then parent constrained a joint to the locator, and made a control. Using a SDK (set driven key) I had the Control Object Drive the U Value of the Motion Path Node. 0 at the top, 1 at the very end.
Basic weight painting on the head tied the joint to the eyebrow region. The joint now travels along a specified path that I can change anytime. Just grab the CVs of the curve and your joint path will change, affecting how the geometry movies across the face. This is an exaggerated effect so you see how it works.
I wanted to see if the verts on a mesh could have a weight of "1" for two or more joints. I don't think they can. The layered approach would be this: The mesh to be manipulated has no joints in it. I have two blend shapes that are being actively driven by joints. Turns out ONE joint CAN be influencing two meshes at a time. Interesting. In this image, the blend targets are being combined into the final shape on the left.
No comments:
Post a Comment