/* */

Wednesday, 2 June 2010

Neck Setup

Brief description of the neck setup:
Down the neck theres two joint chains, an FK and IK setup. The IK has a spline Ik running through it, and the arrowed pointers have a joint each parented below them which are skinned to the IK spline (could have used clusters but opted for this method instead.

The FK chain will be responsible for posing the head and has the FK controllers parented under the end joints. This way the FK can control the fine tweaking. 

Going back to the reference video, I wanted the head and the body to have independant movement (ie to be able to move the head and the body stay still and vice versa). This will be determined by two seperate controllers, the first will be on the root bone. This will control the birds torso position whilst planting the feet (bringing the leg IK into play). I will then create a locator control that will be positioned at the head controllers origin. Previously I did a little tester involving an arm orient - where the animator had the ability to rotate the torso, and decide how the arm should follow (whether it rotated with the torso or held its rotational position) through orient constraints and weighting.

 My head planter will be parent constrained to both the root controller and the head controller. When the control is set to head, the animator will be able to move the root around and the head will remain planted - there's no stretch on the neck, so hyper-extension (moving up and down) will eventually cause the head to move. This is unavoidable, but the footage I have shows the body tends to move side to side; if this is the case the curve length will not extend and the head will stay rooted.


Here's the neck/head setup complete, and showing the attributes for the hip controller. As you can see from the channel box, i've added an enum attribute labelled "head" and "body". Primarily, the animator will want to work in "body" mode so the head follows the body, but there will be occasions where they will wish to switch over to head and give it that sort of body wobble motion. The outliner shows the parent constraint, wired between the head locator and the end FK joint. the head locator will be parented under the main animation control so it moves with the rest of the rig. Visibility will be switched off - you don't need to see it!

Monday, 31 May 2010

Foot Setup


Foot setup is now complete, so here's a quick rundown describing exactly whats happening.
Each toe has an fk joint chain running down it (I could have opted for an IK spline chain, driven by fk but decided this was a little overkill - There's no particular closeup of the feet in any shot). Getting the feet into the right pose is quite important, watching the video's I've noted the positions and shapes they achieve whilst walking and flying.

Each joint is connected at the ankle by three separate joints; which are not for skinning, but will allow toes to rotate downwards independantly. I've set up a "relax" attribute on the foot controller that will control this. I'll create a seperate ankle control for skinning which will have the ik handle attached.

Each joint has a nurbs control curve attached to its shape node using the parent -add -shape command. Took me quite a while to figure out that the shape has to be at the origin, with all its transforms frozen out, history deleted. Otherwise it maintains offset from the origin. We don't want that. This is a really nice processor friendly, Outliner tidy way of doing things (rather than using parent constraints). 

Set driven keys can now be applied simply to pose the feet into walking and flying positions, and speed up the animation process.

Sunday, 30 May 2010

Crane - Side View

Side view of finished geo for the crane character. Lots of consideration already going into the neck. Comparing it to a more humanistic bipedal rig - it shares some characteristics; however the neck will need to be treated like the spine, the body i want to keep pretty rigid i the x axis, might break it up with one join in the midde just so it has a little flex for when the wings fold back into walking position, but might not be necessary.

The bird skeleton seems to suggest the whole body is one fused unit - come to think of it, i've eaten  my fair share of chicken off the bone - we've all picked around that huge lump of cartiladge that ends up in the bin - It has no play in it. Just the same here, except a bit longer.

I've also included the outliner and channel box in the snapshot, just to demonstrate the geometry is fully reduced to one piece, named up, grouped accordingley, has its transformations frozen and history deleted. Ready for rigging. 


Joint Placement - Side
One of the most important parts of the rigging process and sadly not well documented in video tutorials. This rig will have plenty of joints down the neck for the bird to move and shake and connected by spline ik that will be driven by fk joint chain. I'm not going to include any stretch or squash - this character is supposedly made from paper, paper doesn't stretch. 

Legs are pretty straight forward, only they bend in the opposite direction to ours, so i'll bear that in mind. I.m also going to add a couple of joints down the talons, so the bird can clutch, but for now I think this will suffice - might go back into it later and tart it up.

The front of the neck is quite a large area to control with the neck chain and will pose problems when weight painting, so what i'm considering is adding some sort of rib joints, with an expression connecting them to their neck parents that staggers their rotation a little - might hold its geometry a bit better this way? This will certainly make the weight painting a lot easier (one thing i've learnt from the toxic boy rig).  


Joint Placement - Front
Front view of the bird, looking at it again, I think the top leg joints need positioning slightly further down where the begin to bulge out. I've tried to show the rig sections that will hold the geometry towards the front of the neck. Wing sections will have two major bones that bisect the geometry and allow them to fold. The top view will illustrate this better.
Joint Placement - Top
I've begun with the wings - they're going to be the most difficult to work correctly. Thinking about typical wing behaviour, and what springs to mind is the way they fold back on themselves and tuck on top of the upper body and an actual wingflap. To save a boatload of time for the animator, I'm going to set up these motions via set driven keys, then they can just use the slider in the channel box rather than animating it every time.
Looking at the above image, i've had to slightly adjust the geometry on the wing, by shortening the second half so when it rotates and conceals itself under the first section it doesn't poke out at the end. I've also lengthened the first section so it will cover enough distance down the back. Looking at Crane reference material, this is quite some way.
I originally (and incorrectly) thought both sections of the wing rotated in the Y axis in the same direction. This is incorrect; the arrows point out the correct direction. In order to set this up using joints I used a chain which involved a three way setup. A chain that travels down the length of the wing and the offshoots that will point the feathers in the right direction.
I've tried to pose the wing in a folded position, but it turned out impossible to correctly position both the feathers and arm independantly as they share the same axis.
My proposed solution is to group each feather chain individually, then parent the group down the original arm joint chain. Now the arm will affect the rotations of the group node, leaving the joints themselves with free rotation values, that can be rotated to get the feather stretch.  

NB.
I've also added an extra shoulder joint to achieve the necessary Z axis elevation - if you look at reference material, the wings lift at this point to tuck the second section beneath it and hug the body. Very important!

Outliner
Outliner, showing exactly what i've done. Each individual feather chain is in it own group. These group nodes are then parented down the hierachy - exactly how a normal joint chain would be, only theres a group node inbetween doing the spadework, leaving the actual joints on zero rotation and can be independantly manipulated for fine tweaking. I've set the rotation mode to Gimbal, so it's an absolute doddle to animate!



Friday, 7 May 2010

Rig layout - Crane

I've had a quick think about Eddie's Crane's skeleton and these are my initial thoughts.

As Ed's experience with animating in Maya is pretty limited the salient factor here is to keep it as simple and easy to use as possible - so he can become acquainted with it asap (times a tickin!)

Another consideration to bear in mind is the animation style of the 2d stuff. This will eventually be composited on an after effects animation (2d) and as far as I know it will be animated in a cut out origami style. So whilst the Crane's animations should be consistent with the rest of the piece (so as not to look out of place), it should also be anatomically accurate in order to mimmick the creatures real movements.

This initial rig (minus the wings) uses a spline ik to control the neck - Cranes have a lot of articulation in this area, and I was considering using a dynamic chain to control its body (at least in flight) to reduce controls. 

The legs will be controlled by a standard ik rp solver with non-flip polevector controller for when the bird is walking around.


There will also need to be some sort of hand/finger setup as birds use their feet to grip like humans do with their hands. Because the shot we are after is fairly static in this area, nothing fancy is required, a set driven key allowing a clenching ability will suffice.

..................................................................

Testing

I've tested this setup and it doesn't achieve the correct articulation - the head will not remain locked - independant of the body and the neck could do with more joints to achieve tighter arcs.