Weighting

The next step in rigging the mesh was the weighting. This means making sure that all of the vertices are being influenced by the right bones. To do this I first selected the whole skeleton and the mesh and then clicked on skin > smooth bind. I then put some animation on parts of the rig which would allow me to see what parts of the rig are being influenced by the wrong bones and allow me to correct them. The first method of correcting this was to select the mesh and then right click and select paint skin weights tool. this allows you to select the bone you want on the left hand side and it will show you on the mesh which vertices are being effected by painting them white. This tool allows you to re paint areas so that the bone selected controls anything you have painted white and doesn’t control anything you have removed the white from. This is a good way to organize the weighting for any parts that would be influenced by more than one bone such as the knee or on the lips so this is where i used this. The second way I sorted out the weighting of the rig was with the component editor which allows you to select the vertices you want and then type in a number for how effected they are by all the bones 0 is no influence and 1 is that bone is the only one that has influence on that vertex. This is helpful for all of the long areas of the mesh that would only be influenced by one bone. Such as the thigh, shin, forearm or upper arm. Once I was happy that all of the weighting on my mesh was correct the rig was finished, i could now hide all of the joints and control the rig solely with the controllers.
mandone

weighting painted

weighting window

Weighting

Next I added bones into the face to allow me to control different aspects of the face. I put three on each eyebrow. Three above and below the mouth as well as one in each mouth corner. I then parented all of these back to the bone in the middle of the head which lines up with the ears. Next i created GUI for all of these joints using curves and text and grouping them into separate controls. I created an upper lip controller, a lower lip controller, a mouth corners controller, a left eyebrow controller and a right eyebrow controller. AS well as this i added some GUI for the opening and closing of the mouth which wouldn’t need a new joint since i would use the rotation of the jaw joint to control this. Next I used set driven keys to connect the GUI and the joints.
face joints

GUI

The next step was to create a blend deformer to let the eyelids of the geometry close. To do this first i duplicated the geometry and moved the vertices of the eyelids so that they looked closed. I then selected the two sets of geometry and created a blendshape node. Lastly i connected this blendshape to a GUI using set driven keys.
eyes closed

eyes closed

eye gui

The next step was to create the controllers for the head and shoulders, to do this i first put Ik’s from the clavicles to the shoulder joints and renamed them. I then created controllers for these out of curves and parented these to the Ik’s. The next step was to create a controller for the neck and parent it to the joint at the bottom of the neck. I then created another controller for the head and and parented that to the joint at the top of the neck.
neck ctrlls

shoulder ctrls

Next the spine needed to be finished the first step was to add an Ik spline handle from the bottom to the top of the spine. Next clusters were added to the top and bottom vertices in the curve that was just made.Controllers were then made for the top and bottom of the spine, The clusters were then parented to the appropriate controllers. The next step in the rigging process was to add the controllers for the arms. Firstly an Ik was added from the shoulder to the wrist. Next a controller was made for the hand from a curve. The controller for the hands was positioned around the wrist. It then had attributes added for the curling of each finger. These attributes then had set driven keys applied to them so that they controlled the rotation of each of the joints in the fingers. the controller was then point constrained to the wrist bone so and orient constrained to the hand bone. a locator was then added behind the elbow and constrained to the arm Ik with a pole vector constraint. The process was then repeated for the other arm.
arm controllers

finger ctrls

set driven keys

Controls

With all the joints added the next step was to create the controls the first area to have this done was the legs. The first step was to put an Ik from the hip to the ankle using the Ik handle tool. Another was then put in from the ankle to the ball of the foot and then one from the ball of the foot to the toe. I then created a controller for the foot from a curve and reshaped it to look like a foot. The Ik’s for the feet were then put into the correct groups and had their pivot points changed. The foot controller then had attributes added for things such as toe roll, toe lift and ball lift to correspond with the groups for the ik’s. set driven keys were then added so that the attributes controlled the movement for the appropriate group. This process was then repeated for the other leg.
left leg ik

feet controlers

foot groups

foattributes

foo driven keys

Controls

Next the clavicles were added in with as loose joints and re named. Then a skeleton was made for the head, this comprised of a bone at the bottom of the neck, one at the top of the neck, one at the ear and one at the top of the head. Two more joints were added at the back of the jaw and one at the chin. These were parented up to the joint at the ear. these were then all parented and named appropriately.
head

skeleotndone

Next to have the joints added to was one of the arms and hands. starting at the shoulder the joints were added one for the shoulder, one for the elbow, one for the wrist and one for the hand. from here each finger had 4 joints added that were all parented back to the hand joint.This was then mirrored to the other arm and the names were corrected.
arms