Posts Tagged ‘rigging’

Rigging Fundamentals

Friday, March 2nd, 2012

A student of mine, making a light saber animation, asks how can he gain more control over an object that is constrained to a parent, is keyframed, and would like to edit it further, but cannot figure out how to override the constraint. I didn’t want to talk about constraint blending, as there are complications with that and are difficult to explain. Instead, I wrote a diagram on the white board describing what all rigs should be, at a fundamental level. The theory is simple, all manual animation, meaning the transforms are keyable by the animator, are the last child in a hierarchy of automated tasks, such as constraints. It looks like this:

Parent, or root of the rig
1st Child – Automated task (ie., constraint to…, exposed as a slider)
2nd Child – Automated task (ie., sine wave script…, exposed as a slider)
Nth Child – Automated task (N…, exposed as a slider)
Last Child – Manual override (exposed to animator as a slider and/or view port control)

The last child will be exposed and animatable within parent space or local space.  All the automated tasks will move the visible child, and the animator will have the freedom to move it where ever it needs to be.  This can get very complex very quickly, and requires a fair amount of scripting/programming to automate the creation of the objects, the constraints, sliders, etc., and any interfacing related. You can see further examples of this in my article on Adaptive Rigging or in my demo reel archive. Also, see the great work of Bernard Haux or Eric Thivierge.

Inherited Transformation

Thursday, November 17th, 2011

Here’s a simple script for a long chain of parented objects.
Create a bunch of cubes in one place, select then all in the viewport, and run this script. Marquee select them all again, and transform the objects to see the effect. This takes advantage of inherited transformation.


string $null[] = `ls -tr -sl`;

int $n = size($null);

for($i = 0; $i < $n; $i++){
if($i != $n-1){
parent $null[$i] $null[$i+1];
}
}

Multiple Motion Paths

Thursday, November 10th, 2011

Here’s a tool for Maya that is similar to a multi-path constraint in Softimage. Make a new scene, create a curve, create a few objects to attach to the curve, select the objects, and run the script below.


string $selection[] = `ls -selection`;
int $size = size($selection);

//change this to your curve name
string $path = "curve1";

for($i=0; $i<$size; $i++){

float $uLinearDistribution = 1.0/$size*($i+1);
float $uRandomDistribution = rand(0,1)/$size*($i+1);
//print ($uRandomDistribution+"\n");

string $motion = `pathAnimation -f 1 -fm 1 -etu 0 -c $path $selection[$i]`;
string $source = $motion + "_uValue.output";
string $destination = $motion + ".uValue";
disconnectAttr $source $destination;

setAttr ($motion + ".uValue") $uLinearDistribution;
//setAttr ($motion + ".uValue") $uRandomDistribution;

}

There's an option for random distribution, just disable the comment. There's no error checking, so use at your own discretion/peril. Each object will have it's own MotionPath node, so check the Attribute Editor for more info.

This will come in handy when we create grapes in the Intro to 3D Modeling course.

SI: Bouncing Ball Rigging

Sunday, September 19th, 2010

From September 2008.

The Bouncing Ball Rig – Inspired by and specials thanks to Jason Schleifer.

These videos are from the course Art New Media 421, 3D Character Modeling and Rigging, at American River College in Sacramento, California. They are the first three weeks of rigging training. I cover the theory and discuss the setup more thoroughly in the classroom, but the following 40 minutes will get you up and running. I hope you can learn from these few videos. Please, e-mail me if you have questions or comments.

The project directory has all the files you need. Use the Project Manager to add the project to XSI. Then you’re good to go!

Updated 2:15 PM 2/16/2009, added XSI 6.0 – 6.5 compatible models.
Project Directory

Introduction, 9 MB
Importing Models, 18 MB
Hierarchy, 58 MB
Envelope and Lattice, 34 MB
Groups, 22 MB
Scripted Ops and Pose Constraint, 18 MB
Cleanup, Locks, and Key Limits, 20 MB
Neutral Pose, 9 MB
Tools, 9 MB
Final, 9 MB

Or, download all at once.

167 MB, WinRAR Required

.

Note:   I didn’t review these old videos, if something has significantly change in SI 2011, please let me know.

SI: Eye Lid Rigging

Sunday, September 19th, 2010

From 2008, here’s a small video series on rigging an eye lid for a realistic character.

WMV formatted.  It’s a large download, 80 MB.

Eye Lid Rigging