The end is in sight on Horton, and because of the crunch I haven’t had time to upload new tools onto this site. But they’ve been piling up, and this weekend I got some time to get some more up here. For one, I’ve introduced a new workflow in working with these tools. A handful of them look to adjacent left or right keys to apply their function, or work with similar scaling factors. These parameters are now set globally through one meta-tool called ackSetup, instead of individual parameters per script. The following scripts have been upgraded to work in this way:

Also, there’s a couple new scripts too:ackSnapEndKeyValues makes sure the first and last keys of curve are the same for cycling purposes. Doesn’t care if curves are offset, so it’s helpful at any stage of animation.ackConvergeBuffer converges keys toward or away from it’s buffer curve. Can also snap selected keys directly to the buffer curve (Maya’s tool can only swap entire curves). Actual keys and buffer keys don’t need to line up, and it will converge or snap to interpolated values.

And if that’s not enough, I wrote some notes on the philosophy of these tools and should help in understanding where our workflows converge.

ackSpreadSqueezeTiming is two operations that inserts or removes an inbetween before every selected key. To open up the timing evenly on something, I always find myself moving the first key one frame, the second key two frames, the third three, etc so this script was asking to be written.

ackTimingFramework is another repetitive task saver. After animating one curve, I usually find another curve or control needs the same timing because something needs to be counter animated, or I need a starting place to see where overlap will be. This script inserts keys in new curves at all times in the framework curve.

Two new scripts ready to go:ackMoveKeys is a further departure from the slow confines of mouse interaction. Moves keys in the graph editor in all four directions. Also has converging functions - useful for favoring poses in one direction or another.ackToggleHighlight is just a simple way to get rid of that annoying white highlight that clutters up your selected geometry while you’re adjusting channels.

Minor (but very helpful) revision to ackToggleCams. No more hard coding the cameras to be switched. The first time it’s run it takes the current camera as the default shot cam (much like ackToggleSound). A setup window is also available for changing the two cameras at any time during your session.

Here’s some new goodies:ackGotoTime - Death to the mouse!ackPushPull - I probably use this every 10 seconds.ackToggleTranslateMode 1.1 - Now toggles between World and Local instead of World and Object, since Local represents the actual channel that animates in the graph editor.ackToggleModel 1.1 - Now toggles subdiv surfaces as well as polys and nurbs.ackSwapKeys - Flips the times of two poses. Blocking time saver.

I’ve been animating at Blue Sky for the past couple months, so I’ve been slow getting new scripts up here. I do have a handful of new ones, as well as updates to existing scripts. Hopefully I’ll find some time to get them up soon!

Fresh release of ackDeadPixelFinder. I’m really excited about this one, and it’s been on my list of scripts to get done for some time now. It hunts down the remaining stepped keys, linear keys, or held poses that are left in the scene. Lets say you’re working your way out of blocking, converting stepped (or linear) keys into splines. Tick the “Stepped” and “Linear” checkboxes, and you can use this to jump around to what needs to be addressed. Then later, use “Held Poses” to hunt down sections of animation that lock up with no residual energy or moving holds. Obviously this thing doesn’t replace good judgment and a good eye for your frames, but I’m using it as a quick way to take me to the next task. I’ll be improving on the performance and ironing out bugs as I use it, so check back here. I did want to get it out there though, so I’m calling this BETA 1

Made an update to ackShuttleControl concerning the timeDragger function. Before, it would sometimes not return you correctly to the tool you were using. All fixed up now.

Separately, someone pointed out a bug in ackShuttleControl which, under certain conditions, it’s possible to undo a pose change and have the pose reappear on an incorrect frame. After some testing, it seems clear that Maya is making an incorrect assumption about the state of the scene - it assumed that the undos that we skipped would have taken us to the correct frame. Since the whole point of the script is to not undo the time change, we confused Maya when it executes the Set Key’s undo function. Hopefully there’s a workaround to this, and I’ll have to think about that. Until then, use at your own risk!