Thursday, 22 December 2011

Red Studio Pack v1.10

I've just rolled out a new build of the pack which should show up in the Download folder and also on CreativeCrash.

This is a big release for the Animation and NodeSearch code. After doing more Vimeo demos I caught a number of bugs in the way the logic was running that didn't feel right so I've hopefully made it all a little clearer. I've fixed the HIK support in this release, I took it out in v1.09 as I was trying to find a neater way of dealing with all the HIK callbacks, all the Animation functions should now work as they would on any other rig system. Also added support for CharacterSets and SelectionSets which can now be used as the root selection for the Hierarchy filters. Makes it easy dealing with rigs where you have neat keying selectionSet groups as you can just select a source and destination set and run the Hierarchy filters and thus all the AnimationUI tools between those 2 sets.

See the Vimeo channel for the latest demos.

Happy Christmas!

Rig Handling: Another Day Another Video

Well hopefully this will explain the Rig Handling a little better within the systems. The main thing to understand is what and how the hierarchy filters in the Red9 pack do. These are extremely powerful filters that run in unison to pinpoint nodes within a hierarchy structure based on nodeTypes, nodeAttributes and nodeNames (this one is a RegEx search string). This is an intersection search. The idea is that to properly transfer data between complex rigs we need to be able to identify the nodes to be processed within those systems. Note that these filters will processes from a selected RootNode OR from CharacterSets and SelectionSets!

The behaviour of all the Hierarchy checkboxes in the main AnimationUI are controlled by these filters. There's a few presets to get you started, filters can be made, tested and stored. If you don't want to get too technical then for rigs just used the Standard Rig preset. This will filter the hierarchy for nurbsCurve based controllers.

This also goes through the various methods of transferring animation and pose data between animation rigs.

Big thanks to Nigel and the guys at MotionCircus for letting me test this out on one of their production rigs.

Saturday, 10 December 2011

New Vimeo Video: Track and Stabilizer

Here's another video showing the Tracking and Stabilizer functionality of the AnimtionUI. This is a very powerful yet simple little tool for managing the interaction of nodes in Maya. Allows tracking at a Component level in Maya, so you can select a poly on a character and lock a controller to it's surface over time.

Friday, 2 December 2011

New Vimeo Channel

At last, I'm starting to do demo Videos and have just setup a Vimeo channel. Over the next few weeks I'll add many more hopefully! This first one demonstrates a few of the new features in v1.08.

V1.08 now released

Well another version has just been uploaded with a number of new features. I've also setup a Vimeo channel which I'll drop the link for once the demos are online.

CopyKey and CopyAttr - these now have a new checkbox 'toMany' which allows you to copy animation data from the first selected node, to ALL subsequently selected nodes, duplicating/syncing the animation / attrs to all. This was initially in v1.07 but there was a bug in the processing.

TimeOffset. Added functionality to allow you to offset the animation of selected nodes in a flocking behaviour, adding the offset to each subsequent node processed. Also added a randomizer to the TimeOffset, the offset entered is passed to a random function before the animdata is offset. Random will offset the curves between 0 and the offset entered.

As always, all suggestions and feedback welcomed.


Wednesday, 23 November 2011

New build on it's way!

Version 1.07 was put up on Creative Crash a few days ago but since then I've been busy adding new features to the pack which I thought I'd share, these will go up as a new build newt week I think.

AnimationUI - object processing orders:
All the calls in the AnimationUI now have an additional method of filtering selected object pairs for processing. It used to be either 'Hierarhcy' mode, ( in which case 2 selected Root hierarchies would be processed for matching child nodes), or 'Selected' mode (in which case I'd process objects such that (ObjA>ObjB)(ObjC>ObjD) ... etc. )
The new mode basically allows you to send the data from the first selected onto ALL of the subsequently selected nodes so that (ObjA>ObjB)(ObjA>ObjC)(ObjA>ObjD).....

Why? Well lets say you wanted to copy animation data from a source onto multiple objects in the scene. Well this will now let you do just that. This is now enabled for CopyKeys and CopyAttrs functions in the UI

TimeOffset Functions. 
These have had yet more work done on then, Options added to stop the timelines being offset in 'FullScene' mode. Also added a new 'flocking' method when you're processing selected nodes. In this mode rather than offsetting each selected nodes animation by a constant offset, each mode would now get the Offset+offset incrementally as each one is processed. Great for processing bulk animation data when you want something like timeoffset rotates of hundreds of animated blocks etc.

More on it's way


Monday, 19 September 2011

Studio Pack v1.06 Released

Updates v1.06:

Major bug in the Animation UI, it wasn't returning the Animation Hierarchy Preset priority lists. This meant that the Morpheus and HIK support in the presets was broken for the snap tools.

You can now add you're own preset by clicking the Store New Filter button in the Animation> HierarchyControl Tab. Also added a RMB Delete to remove presets if needed. The whole oft his has been updated and cleaned up.

Obtimized a lot of code to try and speed things up. This is still ongoing.

As always any suggestions please feel free to mail me. I'm working on a request for a tool to manage and allow users to add timeWarp curves to animation layers so you can control them at a layer level rather than having to use the Scene Timewarp. This will go into the next pack.

Thursday, 4 August 2011

Thursday, 2 June 2011

Quick patch v1.03

Done some some patching to support HumanIK under Maya2012, also enabled regex filtering in the FilterPriority list which controls how the internal order of the hierarchies that get processed. This links into an update on the presets to better support it all. Hopefully I'll get some videos up next week and add to the rig templates that are there.

Any suggestions as to what generic rigs I should add templates for?

Tuesday, 31 May 2011

Another Roll-Out v1.02 - testing new interface and presets

This is a test version with a big upgrade to the way the Animation UI deals with hierarchies. We now have a separate Tab to generically setup how all the hierarchy checkboxes are going to deal with complex animation rigs. I've even added a few presets in there which carefully tweak how the internal code deals with each rig system. The HumanIK preset is work in progress, under 2012 there's some big limitations of how the HIK callbacks are managed which I'm trying to code around!

Also added the Copy Attributes as a function which is very useful for rig to rig transfers of poses.

Videos are on the way, honest!

Download =  follow the DL Tag on the right to the generic download post.

Thursday, 26 May 2011

New release version now up Red9_Release1.01

Red9_Release1.01 - just follow the Download link to the main download folder

Lots changed and not much time to go through it at the moment. The main thing is that all the hierarchy processing for handling rigs etc is now on a separate tab. This makes things a lot easier on the main animation tab. Basically any time you have a hierarchy checkBox, its the settings on the second tab that are being run. There's a Test button so you can see what this means on your animation rig.

Added: Copy Attributes as a function, very useful for copying all channelbox attributes for rig parts across to other characters, works kind of like a temp pose.

Added: Snap Transform now wraps the copyAttrs and copyKeys as functions to allow it to fully sync entire animations including all secondary channels settings.

Coming: Presets for standard rigs you may have downloaded. These will setup the hierarchy filters for you.

I'll explain more once I've got time


Wednesday, 20 April 2011

StudioPack - Release v1

At last I think it's time to get this out to everybody. It's just gone up on CreativeCrash although the Download link here will always be the latest version as it's linked directly to my gmail docs.

Thanks to those who help on BetaTesting this stuff.

Creative Crash link



Friday, 1 April 2011

Updated version Beta2

I've been doing a little house work on the code and thought I'd drop a new version up, also working on some video tutorials to show you what this setup can do.

ChangeLog: 31st March 11
SnapTransforms:  Added an iterator to the SnapTransforms code. This is an important extra which should now allow you to deal with complex hierarchy structures that don't follow a standard pattern. Previously if your Rig wasn't structured so that the feet were the children of the hips, which was the child of the Root etc, then the snap order may have got the data wrong. The iterator allows you to have the code run back through the snap results over X number of passes to get a better result.

Install updates:  By default the setup is designed to be installed via the Maya module system following the install instructions in the pack, but I've added support so that if you didn't want to do that, you could just launch the whole thing via a standard Python import call. So from the Script editor in Maya (Python Tab)

import sys
sys.path.append('path to the Red9/scripts folder')
import Red9_Setup

That should get the whole setup running, including adding the Plugin path etc. Still not sure which is the better approach, would people want to use the module file? Personally I find it better as you can have a simple module folder outside the Maya versions in the myPref/maya folder and that will run the setup for all your Maya versions in one go.

Just follow the Download tag to grab the latest version..


Sunday, 13 February 2011

Red9 Studio Pack Beta2

Hi all, Ive just updated the Download links with Version Beta 2. Much of the code behind the setups has been redesigned to extend the api for future use. Hopefully I've caught all the bugs!

So whats new:

The big one is that the Tracker in the AnimToolkit now works at a component level (in 2011 anyway). So if you use the Multi select tool (Control+RMB marking menu ) and select a Poly, then a transform node, the Tracker will pin the transform to the poly's normal (or vert/edge) - maintaining the offset. Obviously using the point on poly constraint under the hood. Useful... well lets imagine 2 characters interacting and you need to pin the wrist of one to the other characters chest... you can now pin at the poly level.

The Offset tool now deals hopefully with everything, audio, clips, transforms and timelines, this is at Scene level or selected level. If selected then it'll offset based on each selected node type. For animated transforms it goes through the nodes history to find any animCurves and offsets based on those. Seems to work really well and it's nice to be able to multi-offset audio, clips and nodes all at the same time and nudge their key times.

LockChannels - new UI for managing the visibility and lock status of nodes or hierarchy, very easy and fast for locking up a rig before passing to animators.

The Filtercode: major code redesign and all the calls now work on 3 levels: given nodes, hierarchy of given roots or at a scene level.

All suggestions and requests welcomed


Tuesday, 1 February 2011


Been a while since I updated the Blog so thought I'd drop a quick post to let you know what's coming: The whole of the Python code is being cleaned up and made into a better api for others to use if they should want to.

The Tracker has been made component sensitive, you can now not only track between 2 transform nodes, but also now track between component and object. This is great if you're dealing with animation where one node needs to contact another's mesh solidly. Lets say that you have 2 characters and want one to put their hand on the others chest. All you do is select a face,edge or vert for the track reference then an objectand run it over time. This hooks into the pointOnSurface constraint in the background (2011 only)

The pack will probably be ready for release towards the end of Feb.