Jump to content
Hash, Inc. Forums

'Steve's Hand Gizmo' Rig

Steven Cleary

Recommended Posts

A while ago, I made something called the 'Hand Gizmo' in v8.5 using a hefty bunch of scaling bones and aim targets. The attached updated, much more bone efficient version uses expressions instead and is basically an add on to Raf Anzovin’s hand setup. It moves all four fingers in various ways with one bone, but doesn’t take out any of the functionality of individual bones. Here’s a description of what each axis of the centre CFingers bone does:


X-axis - Curls all four fingers into a fist.

Y-axis - Curls individual fingers in steps of 100%, 66%, 33% and 0% towards the side the bone is pointing.

Z-axis - Spreads out the fingers.


How to install the Hand Gizmo into your models:

  • Delete the splines in the model and save.
  • Use the XHand bones to position, scale and rotate the hands using the manipulator tools.
  • Move, scale and rotate individual fingers by using the X finger bones with the manipulator tools.
  • When moving the little and third fingers, make sure that ends of the GFingerPre bones of the palm are exactly at the base of the little and third fingers.
  • You will also have to place the ALittleBase and AThirdBase bones at the base of the appropriate finger.
  • You can move the end joints of the fingers to match your model’s mesh.
  • Apply the mesh to the corresponding bones.

Here’s a guide to the bone name and colour conventions:

Red ‘A’ bones = Aim target bones.

Light Blue ‘W’ bones = Worker bones.

Green ‘G’ bones = Geometry bones to which you assign control points.

Yellow ‘X’ bones = Parent bones that contain whole elements, such as fingers.


Based on my observations, I’ve kept the middle finger still during the fanning out action and I’ve rolled the fingers either side of the middle finger so that they curl inwards slightly. Due to the latter adjustment, you probably should roll the finger splines to the same degree: on the left hand, little = -10, third = -5, index = 5 and then do the opposite to the fingers on the right.


I’ve left the end finger joint bones visible so that you can adjust it for those actions where you need to roll it backwards. The CFingersOuter bones roll the side of the hand up and down for leaning and pushing actions.


You’ll have to apply control point weighting for the joints and especially the thumb which you can do by selecting one or more control points in modelling mode (F5), right clicking them and selecting ‘Edit CP Weights’. Then you will find a window appears which you can highlight the control points on the left, assign bones from a drop down box at the bottom and allocate the percentage of influence they have by either manually entering figures yourself or using the ‘Balance’ buttons at the bottom on the left.


I think they are all the details necessary for this gizmo. I hope others find it as useful as I have.






Link to comment
Share on other sites

Whoops. I made a slight error with one of the expressions that causes the curl of the two end finger joints to not quite match the angle of the base of the finger when the fingers have been splayed. You can either download the attached corrected version or fix the previous one by editing the Finger Calc - Left/Right user properties (Relationships > User Properties Relationships > Hands and Fingers Relationships > Finger Calc - Left OR Right) and then entering these details:


For 'Finger Calc - Left', enter this expression in the Transform.Rotate.Z field of FIndexL, FLittleL and FThirdL: -1*..|X+(..|Y*(..|X/90))


For 'Finger Calc - Right', enter this expression in the Transform.Rotate.Z field of FIndexR, FLittleR and FThirdR: ..|X+(..|Y*(..|X/90))


Apologies for my blunder.






Link to comment
Share on other sites

  • 2 weeks later...

I've updated my Hand Gizmo and it now includes squash and stretch nulls. The first four pose sliders are mainly meant for use with the 'CFingersL/R' control bones so that you can vary how the two end joints of the fingers bend. The next two adjust how the fingers react to the scaling nulls of the fingers by hiding the two end nulls of each finger and making the base nulls scale the entire finger.


The hand nulls scale the whole hand and can scale the fingers as well if you have the 'Fingers Scale With Hand' sliders on full wack along with the 'Hand _ Finger Scale' sliders set to 'Single'. The fingers can be at any angle with any amount of curl and each section will still scale along their own Z-axis, not the hand's.


It's a fair bit more bone heavy, but if you follow the previous installation instructions and keep the finger bones aligned as they currently are, it should be a fairly straightforward process to bung it in your own rigs.






EDIT: Updated the file very sightly so that the CFingers control bones don't react to the hand scaling nulls.


Link to comment
Share on other sites

  • 5 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...