Rigging a Scorpion Mech: Part Seven, Arms, Claws and Cleanup

screenshotFor this part I’ll go into some detail about the setup on the arms and claws as  well as touch on a few other things as I prime this character for his first round of animation testing. More after the jump!

I went with an IK/FK setup for the arms and claws using a three-bone setup similar to the legs. FK was a simple setup but I ran into a peculiar issue with IK that has to do with the scorpion model. The arms of do not have a wrist joint, so there’s no way to control the orientation of the claw whilst moving the arm around in IK. My initial tests found the IK mode very unintuitive, but since the setup is completed I’m leaving it in, for completion’s sake. Fortunately, the FK arm works like a charm.

Node graph showing the math nodes I used to make the guns spin. Note that time1 is a predefined node that exists in every Maya scene.

On the ends of both arms are claws with a gatling gun in the center. To give the animator easy control over spinning the barrel without directly animating the rotation, I created an “expression” using render nodes. Nodes perform much better than MEL expressions in animation, however, it’s not immediately obvious how to link nodes to the timeline. Expressions are nodes as well; creating an expression that uses the predefined variable “frame” links the expression to a node that’s created with all Maya scenes known as, “time1”. The Time node holds the current frame of animation. Linking this node to some math nodes, offers much of the same functionality as an expression, but with superior performance. The rigged the spin of the gun barrel using two MultiplyDivide nodes that evaluate how much to spin the barrel each frame. The spin is controlled by a custom attribute on a control object and there’s an additional option to “offset” the spin by rotating the control. Incorporating the offset required an additional node known as PlusMinusAverage, which adds the offset to the result generated from the Multiply nodes to give the final rotation value.

With the arms finished, the rig is nearly done; all that’s left is some cleanup.  Here are the steps I took to cleanup the scene.

  • Delete any unnecessary objects such as duplicate geometry, curves, etc. that aren’t linked to the rig. When I’m not sure if a questionable object is part of the completed rig, I simply select it and see if any parts of the rig turn purple (Maya’s visual cue that the selected object has outgoing connections).
  • File->Optimize scene to further remove empty nodes, and unused skin influences
  • Attach all animation controllers to a quick selection set for easy access.
  • Lock and hide attributes on said controllers that don’t affect rig (optimizes animator’s workflow).
  • Lock any group nodes or joints the animator can accidentally navigate to by pickwalking.
  • Group objects in Outliner down to only a few top nodes.

Much of these are fairly simple tasks, and scripts can go a long way to assist in scene cleanup. That about covers everything for now, in the next few parts, I’ll start putting the rig through its paces and show how to add and remove features to a rig without losing the work of the poser/animator.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s