PDA

View Full Version : Blending between transform spaces without popping..


eek
04-29-2007, 01:51 AM
Ive been thinking about this for the pat 2 weeks or so, the rig I have and have used for many years well the idea of it is very simple; a general system: hips, chest, head independance and no counter rotation (hopefully). Ive been talking to animators about relativity - and most prefer the idea of keeping things seperate in there own transform space but also need the ability to transform them into new spaces on the fly, keyable and without popping.

A good example of this would be the arms for instance, the ability to transform them into the torsos space or the chest space when you want. Now yes you could do this with a blend but essentially you blending two spaces without any relativity to the arms themselves i.e the arms will slightly rotate between each space: chest/torso as its just a constraint relative to its original transform.

Now one method is to make a rollout tool with a transform dialog, [x,y,z] so you could transform any object about any other object transform. The problem with this ofcourse is that its in world space - it has to be. And if you where to do this in a realtime method for instance using a when handler, the problem would be the transformed object would always get world transform keys even if you werent keying it.

One method i was thinking is a simple snap method, using the blend method, but also integrating a transform offset difference added onto the constraint. For example you press snap, and it stores the transform space of the arm to its target at that point on that frame, also switches the blend. But because you know the difference you could key the blend with no pop whatsoever.

Storing this transform space offset is another matter - i guess you could just key the arm ontop? with the difference if its happening over 2 frames. Even if its not for instance with a slider, on mouse down you could store the tm space difference and blend it onto the arm inconjuction with the actual orientation constraint.

Is anyone doing anything like this? I know when handlers wouldnt probably work because its always gunna key its world transform relative to a target, so you'd get keys you wouldnt want. The other issues that could happen is drifting of animation space.

Im kinda treating rigs nowadays as layers of systems, and modularity is the key.

DeepGreenJungle
04-29-2007, 02:13 AM
Yeah, from my experience, it seems like the best solution for this is to just have everything haning out in world space and make decent tools for the animators to constrain a node above the controls to whatever they want per shot.

The thing you mentioned about having a tool to just rotate one object about another wouldn't really work, since as you mention, the keyframes would be in world space and the interpolation between poses would be really ugly.

The second thing you mention about the offset seems like it adds more complexity than necessary. Plus you have to manage that offset data somewhere, and you don't really want to expose the raw values, because somebody, somewhere will always get in there and mess with them and break something.

In general, I really don't like putting lots of blend attributes in the rig. It just seems kind of artificial to set up pre-defined "spaces" for a control to travel through; its better if they can just constrain it how they want it per-shot. It seems like a little bit more work for the animators, and a little bit more shot-specific information to carry around, but the flexibility is totally worth it. The rig never comes back with requests to add another slider because they need it to follow some new body-part in some one-off shot.

eek
04-29-2007, 02:31 AM
Yeah, from my experience, it seems like the best solution for this is to just have everything haning out in world space and make decent tools for the animators to constrain a node above the controls to whatever they want per shot.

The thing you mentioned about having a tool to just rotate one object about another wouldn't really work, since as you mention, the keyframes would be in world space and the interpolation between poses would be really ugly.

The second thing you mention about the offset seems like it adds more complexity than necessary. Plus you have to manage that offset data somewhere, and you don't really want to expose the raw values, because somebody, somewhere will always get in there and mess with them and break something.

In general, I really don't like putting lots of blend attributes in the rig. It just seems kind of artificial to set up pre-defined "spaces" for a control to travel through; its better if they can just constrain it how they want it per-shot. It seems like a little bit more work for the animators, and a little bit more shot-specific information to carry around, but the flexibility is totally worth it. The rig never comes back with requests to add another slider because they need it to follow some new body-part in some one-off shot.


Yes, exactly I've basically come to the conclusion that you make a rig, to support a good set of base ground rules, in my book no counter animation is top, and automation/manual second. With transform spaces im just just starting to look into solid systems for the animators.

I dont want a realtime system, its messy for the problems we discussed. I dont mind a toolbox animators can transform an about about another, because there generating the keys they want about anything else they want, and if the keys are in world transforms well, thats what would happen anyway if they where keying it manually, they can controll exactly the interpolation to the target.

As to blending functions, the arms ive come to the conclusion work great when relative to the torso, and independant to the chest. Like the shoulders.. eg. shrugging. The animators hardly ever use a slider to blend between the torso and chest. And snapping generating automatic keys is bad. Im not into system that have to generate keys to fix problems.

As to working out the transform offset with a blending slider, well that would be built on the fly. (just get the arms current transform space relative to the change) and blend it back on when you move the slider but.. again its generating keys.

Currently i have blend controls in just the arms/legs for ik - everything else is viewport, very fast to pose. And you right if they need a specific rig/ space to work in we do it on a per shot basis.

I'll continue this over on my blog as i tend to ramble.:)

Thanks again,

CGTalk Moderation
04-29-2007, 02:31 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.