Wednesday, 30 October 2013

God Damned ANIM LAYERS!!!

So all animators love the animLayers in Maya right, the problem is that from a pipeline point of view they're an utter cluster fuck!

I've been doing some serious optimizations to the snapTransforms code in the pack, you can now use the filterPriorities list in the hierarchy tab as a list of nodes which will be snapped during the process. Let me explain, you have feet, wrists and COG all in the same space, normally parented under a global rig controller. Now all other controllers in rigs are normally children of these, or at least children of a subset of nodes. Ie, your head controller is a child of the shoulders, so as long as the shoulders are in the correct space, then the data on the head should just be able to be copied over, no need to run a snap..

In the current build I pass all nodes returned from the hierarchy filter to the snap list, so even things like fingers would be on it, makes no sense. It's also something we were doing at Eurocom for years to speed up snapping rig animations.

So cutting to the point, this all works and I've tried it on a Morpheus sequence, over a 100frames it was just over 10 times faster, yippee!!!! Except one of the animators at work found an issue that arises in this logic from animLayers.

There is currently no code to copyKeys in Maya that respects animLayers, all you get are the current active animLayer keys copied over, which now means if you've got adjustment layers on your nodes I can no longer rely on being able to just copyKey data on subNodes as layers gets in the way.

Think a warning dialogue will have to do for the time being, I'm looking at teaching the Red9.copyKeys about layers, either have it flatten them automagically or rebuild them on the destination nodes