PDA

View Full Version : Link constraint


pete
01-22-2003, 03:57 AM
Hi there Softy people!

I saw this post on the MAYA forum -

"Im looking for something like an animatable linking constraint... Lets say i have a character that I want to be walking along then pick up a can on the ground .... then perhaps later constrain the hand to a table...
How would I constrain the Hand to the can, and then be able to animate the can and have the hand follow it.. Then constrain the hand to a table then move the back/or pelvis and have the hand stay onto the table.

In 3dsmax this was called a link constraint."

Now unfortunately there wasn't a good solution for this situation in MAYA.. I was surprised, I'd want to do this sort of thing all of the time with character animation and I was just wondering how this kind of thing would be done in XSI. So if anyone has any idea it would be greatly apreciated.


Thanks - petey

ggg
01-22-2003, 04:46 AM
its very easy and very flexible in XSI, (in fact in your example you could mix between constraining the hand to the can and the can to the hand but requires intermediate dummy objects for each.)

In XSI you can put anything into an action clip to mix in the animation mixer such as fcurves, expressions or constraints BUT those different types can't be mixed with each other so instead you put your usual character fcurve animation into a clip in the mixer and either:

A-also animate or store and mix the fcurves for constriants "blend" value into seperate clips for each constriant and change weights between them and animate the objects being constrained to

B-or animate or store and mix the "active" param value for each constraint and change weights between them and animate the objects being constrained to

C-or as the manual suggests as a trick for not being able to mix constriants and fcurves, make a 2nd dummy hand null that is also parented to the wrist and constrain it to the other object(can), then make an expressiion that ='s the pos and ori of the orginal hand null to the 2nd dummy hand null and put that expression into a clip in the mixer and blend its clip weight value to get the original hand to move between it and the applied fcurve animation.

Then multiple dummy goals can be made, and prefering the techinique in A using BLEND, one can blend between multiple constraints and still mix with fcurve clips applied to the character.

added: theres a thread on this on xsibase with a reply from Gordon, the NLA man himself

pete
01-22-2003, 05:06 AM
So in the Blend method are you blending between multiple parents for one object?

ggg
01-22-2003, 05:46 AM
not quite,
more like blending it to a copy of itself, which has the same parent and is constrained to the object you want it to follow.

added: it doesn't have to be a copy of itself, I just prefer that for naming and if its an icon so it looks the same. it can be just be any object used as a dummy.

the idea is the dummy is in the same place in the hierarchy as the orginal object but is also constrained to the other 'object to follow' (instead of constraining the original to the 'object to follow'), then the expression to match the ori and pos of the original to the dummy is blended with other dummys or likely a fcurve clip applied to the entire character like a walk, sit or something

Atyss
01-22-2003, 12:33 PM
Sorry if I'm misunderstanding the whole thing, but I think that to simplify things as much as possible, you'd just have to animate the blending of constraints.

It means that you can apply several constraints onto an object, and then animate the "strenght" of each constraint. When the character picks up a new object, keyframes are created to change the "strenght" of the constraints.

Of course you'll need to apply the constraints to the same object, in this case it could be an effector or simply a null that is constraining an effector.

Sorry Graham if it is what you explained :beer:


Hope this helps
Salutations - Cheers
Bernard Lebel

ggg
01-22-2003, 08:27 PM
Yes I was saying that one can animate (or store and mix) the fcurves for constriants "blend" value, but was mostly covering the store method, thanks for clarifying that method Atyss I should have more cleary outlined the simple method first.

I mostly covered the store method as I recommend and prefer storing actions and using the animation mixer but the inability to mix contrains with fcurve actions is an issue most run into when using actions. But a basic workaround is possible and actually better for and more adapatable when exporting (not the entire scene model) just the character models, if the constraining objects are not included, as they are likely instead in another model.

Its an added step but once the dummys, expressions and animation clips are made, it allows one to use a cycled walk clip, and blend the hand from walkcycle clip influence to locked to the table, and allows easier visual reuse, managment and timeline editing of what's blending in the mixer. Another option with easier acces but less easy editability would be to make a custom PPG for the blend values.

edit: spellin

dogz
01-23-2003, 06:02 PM
i,m not going to try this <dont have time> but this might be a simple solution....real time physics in xsi...give your object some gravity and mass that you want your character to pick up and handle..set your charecter to be a deflector to the object..and then animate away and it should handle the object...IF you try it let me know how it goes...dont do it if your on a deadline though..

ggg
01-23-2003, 11:37 PM
you're kidding right?

Atyss
01-24-2003, 01:45 AM
cheers ggg :beer:

CGTalk Moderation
01-14-2006, 05:00 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.