Monday, 3 May 2010

Bones & Rigging

Skeleton Creation

Since the character has now been successfully modelled as well as fully textured the next step before implementing the animation stage was to insert the necessary bones and helper controls. Prior to creating a skeleton, it was first debated as whether to use a pre-made biped or custom bone system. The later was chosen as it offers a complete control of how the final character will animate, rather than being limited to the biped’s specific movements. The only downside however is that custom bone systems take comparatively longer to setup than the biped but should benefit with more precise character movements and body language.

 

Leg Bones

To begin with the bone tools were accessed under the “Systems Menu” of the “Create Command Panel”. Given the fact that bone chains operate on a parent / child hierarchy the first bone created was the hip bone for the top of the character’s left leg. From this another bone was angled forwards in the side viewport for the thigh and then another angled backwards in the opposite direction for the shin bone. These angled bones pointing towards the knee joint are not biologically correct, however producing them in this method will aid the IK chain to detect which direction the leg should bend. Constructing the legs in a purely vertical fashion could cause the leg to bend backwards which is obviously undesired and can prove problematic to rectify. Leading on from the shin a small nub bone was left for the heel and only one bone was created for the actual foot, this was purposely done considering the fact that the Ice Skater Character is wearing ice skates which are rigid and prevent the ball of the foot from bending. This whole bone chain was mirrored for the right leg and both were linked to a central master bone protruding outwards through the character’s pelvis area. All subsequent bone chains were linked to this Master bone which will allow the whole skeleton to be moved at once, for example dragging this master bone down would cause the character’s skeleton to crouch. This is extremely useful as it prevents the need from having to manually transform each bone chain which would be time consuming.

 

Leg Bone Chains

LegBones[1]

(Click Here for Full-Size)

 

 

Arm & Spinal Bones

Leading on from the top of the legs  four equally sized bones were created to act as the character’s spine, the arms were then created on the end of this chain. One bone was inserted for the shoulder/collar bone area then another for the bicep and a final bone for the forearm. Although humans have 2 bones in their forearm, consisting of the Ulna & Radius which cross over allowing the lower arm to rotate. This rotation was achieved by creating a single wrist bone which was assigned an IK chain with the shoulder to achieve the same effect.

 

Arm & Spinal Bone Chains

ArmBones[1]

(Click Here for Full-Size)

 

 

IK Solvers / Joint Control

IK chains were also created for the legs one from the hip down towards the heel and another from heel to the end of the foot. IK (Inverse Kinematics) Solvers are  a specific rigging tool within 3DS Max that dictate how joints should function, i.e. preventing limbs from bending too far or in the wrong direction. IK chains are therefore ideal for a characters legs which have a limited degree of movement and consist of a hinge joint at the knee area. IK solvers link all the bones in a chain between two specified points. Although these are useful for realistic bending motions they can heavily restrict the animation process restricting a character from moving their arms to pick up an object for example. Therefore in this scenario FK (Forward Kinematics) maybe preferred which allow for a greater degree of freedom concerning articulated movement. Given FK’s nature though it doesn't consider physical constrains and could look unrealistic if used incorrectly. To overcome this dilemma IK chains can quickly be disabled during the animation process by the click of a single button within the motion panel.

 

IK Solver Chains

IKChains[1]

(Click Here for Full-Size)

 

 

Hand Bones

Regarding the character’s hands, two different bone techniques were reviewed the first being regular bones with 3 bones for each finger and five for the palm connecting to each of these. The second method was chosen involving simple box objects, three boxes for each finger bone and one large bone for the palm. Both of these methods achieve the same effect however box hands were simply easier to manage and helped to visualise each finger joint. One large box for the palm is also easier to manipulate than 5 connected finger bones, however the only downside is that this technique prevented the palm from being able to bend, although this isn't an issue as the character does not require complex hand movements.

 

Box Hand Bones

02-BoxBoneHand[1]

(Click Here for Full-Size)

 

 

Wire Parameters

In order to ease the later process of making the character bend its fingers several helper objects were created. Each finger joint’s rotation on the Y-Axis was “Wired” to the same rotation of a helper object placed at the end of each finger. This was accomplished using “Wire Parameters” which are accessed by simply right-clicking on the selected bone.This was done for each finger, resulting in 5 helper objects which can rapidly be rotated to bend each finger preventing the need from having to manually rotate each joint within an individual finger. Again this should prove vital during the animation stage as it will dramatically decrease the time required to manipulate the character’s hands.

 

Wire Parameters on Finger Y Rotation

Wireparameters[1]

(Click Here for Full-Size)

 

Helper Objects

The last two bones to be created were for the neck and head which were attached to the parent bone of each arm chain. The last rigging process was the inclusion of additional helper objects at each wrist and underneath the feet which allowed each of these joints to be easily selected without having to enable “Wireframe” mode or hide the mesh to click on each bone. Additionally to aid the workflow each related group of objects was assigned to different layers allowing each to quickly be hidden or frozen.

 

Box Helper Objects

HelperObjects[1]

(Click Here for Full-Size)

 

 

Final Rigged Skeleton Structure

FinalSkeleton[1]

(Click Here for Full-Size)

  • rss
  • Del.icio.us
  • Digg
  • Twitter
  • StumbleUpon
  • Reddit
  • Share this on Technorati
  • Post this to Myspace
  • Share this on Blinklist
  • Submit this to DesignFloat

No comments:

Post a Comment