It seems every studio has their own animated align tool. I’m wondering what cool features yours has, and possibly how you did them.
Some standards are:
[ul]
[li]Align X, Y, and/or Z position, XYZ Rotation, and/or X, Y, and/or Z scale.
[/li][li]Adjustable frame range for alignment.
[/li][li]Key-to-key or every frame
[/li][li]Maintain offset.
[/li][li]Act as child- with or without rotation.
[/li][/ul]
How do you handle things like multiple selections? Many times the mocap animators here need multiple windows, so I put the UI, etc., as a string and increment the rollout variable each time I call it to create a new window (since it seems only one instance of a rollout can exist at a time in Max). Do you use things like selection sets, do you remember recent selections for the Master/Slave object, etc.
I wrote an align over range tool ages ago…I figured Max would make
a feature that replaced it…but ten years later I run the align tool every
now and then.
A trend I’ve noticed in my own rigging is the tendency to use/look for
realtime solutions rather than simulated/baked ones. I tend to use a
lot of reference objects that hold the motion of some other node and
do all my tweaks and adjustments there. This tends to keep the base
rig pretty clean since it derives it’s motion from these reference rigs.
I also use a lot of phantom rigs that drive a skeleton rather than baking
keys directly onto the exported skeleton.
I try my best to avoid writing tools for animators that will bake a key onto every frame for alignment purposes. The reason being that while one animator may work that way (instead of say, using IK and a link-constraint type system), another who may touch those files later may not.
That said, I have written these types of tools and we do use tools like that. Sometimes this brute-force approach is the only way to ensure final animations stays intact.
Yes…I’ve been thinking about my recent use of aligning tools and it’s almost
always to repair some file or to brute force a fix that needed the animation to
be exact.
I just noticed the date on that script…made in 1998… I think it was the first
maxscript I wrote (I was working with Eric Chadwick at Mondo Media).
Unfortunately, we don’t have the ability to stick an IK to an object or create Link Constraints as part of our rig, so animatedAlign takes over that job. But, we do have a really powerful layers system in PuppetShop, which makes this sort of baking/brute forcing much more maneagable.