New constraint affecting old takes. (MoBu)

For a particular take I made a new constraint. As soon as I active it, it starts
affecting the rest of the takes as well, but I don’t want that.

So I set its weight to 0% before activating, turned on the [A] button
and added a single 100% keyframe in the take it was meant to be used in.
I assumed that this way its default weight (ie no keyframe present) will be 0%.

Apparently things doesn’t work this way: if there was no keyframe set for
weight then it goes with 100%, affecting all 50 takes made earlier. I’d prefer not
to go through all of them and zero out the weight manually. (And do it again for
every new, take specific constraint in the future.)

Is there a better way to do this?

There is a setting under the animation/keyframe menu Take options, normal or muliti
select the constraint. set it to 0 first. Then select the constraint only in the navigator and change the take setting form normal to multi take, so that its settings save per take.

Wow, I never would have guessed it… Thank you. :slight_smile:

Okay I thought I understood it but I still have problems…
Here is what I do:

Have 3 takes.
Select take002.
Add constraint.
Select the constraint, set its weight to 0.
Set “Multi Take”, check mark appears next to it.
Set weight to 100.
Go to another take.
Weight is still 100.
There is no check mark visible at all in Take Options, not even next to “Normal”.

If I explicitly check “Multi Take” in each take then it sticks and stuff starts
to behave properly.

I was trying this with a relation constraint which starts activated, unlike a
position constraint which doesn’t. o_O
Also, the latter keeps the checkmark in take options, but its behaviour is still far
from making sense…

Maybe I’m better off making a script which adds a zero keyframe to every take
which doesn’t have one already. This button juggling is ridiculous…

After digging through every scripting docs I found I still don’t have the
faintest idea how to get the selected constraints or set keyframes on weight.

But.

I finally found a workaround. Here are the steps:

1: Go to the first take in the scene.
2: Add a constraint.
3: Set its weight to 0.
4: Set Key controls/Animation/Take options/Multi take.
5: Set a keyframe for weight.
6: Execute the following lines in the Python prompt:

for lTake in FBSystem().Scene.Takes:
    FBSystem().CurrentTake = lTake

From then on all takes have the default weight of 0. You can change it in
every take separately, with or without adding a keyframe.

I don’t think this “inheriting stuff from the previous take” should work
anywhere besides the story window…

EDIT: Fixed code.

The multi take is not story dependent.

If story is on, then you might be seeing something strange.

Sounds like a bug/glitch going on because the multi-take setting is a global switch, not per take. once you switch it it should be that way for each take.

not sure why it is doing it, just sounds like its acting up.