Download

Anim graph - wait until animation has finished before entering next state

Anim graph - wait until animation has finished before entering next state.

I can’t make anything work.

So I am blending from one pose to another,when I change states, I want that blend to finish before entering a 3rd state.

I am trying to implement a transition rule using:

   Get Relevant Anim Time
   Get Remaining (ratio) (pose_asset)
   Get Remaining Anim Time Remaining Fraction (state)

I have tried <= .1 and >=.9 (in case they count up or count down) no luck.

Honestly I think something is broken and I have hit a bug - nothing works !!

Any ideas ??

W-Jones

How did you setup your blending? Is it just state A -> state B and you want to wait until animation is fully transitioned to state B (migt be able to use the end transition event anim notify in that case)? Or do you use some proper blending node within the state’s animation? In the latter case, it kind of depends on the specific blend node I believe. In any case, you should be able to use a blending solution that lets you input your own alpha value, so you could just compare the alpha value to 1.0 in your transition rule.

Morpcider - just state A -> state B, I guess I am going to have to trigger anim notify. But this is frustrating, isn’t this the scenario that Get Remaining (ratio) (pose_asset) is ment to solve ?

I solved it using anim notify events to set state variables - but its a lot messier than it should be.

You sh po old be able to set up the auto rule if you just want to get the full animation to play before transition.
in the transition arrow connection find the auto checkbox and click it and see if it works as expected.

If not the control I use is time remaining <= 0
and it does work in 4.22 at least…
usually you combine it into an And statement to make sure whatever other condition is also met.

MostHost - that doesn’t work - I think this all stems from the fact I am not really playing a “proper” animation. I am transitioning between two poses.

Would that make a difference ?

then your animation is set to loop.
when it loops both the button and the animation time are ignored (or there would be no loop).

The animation is not set in a loop, its only blending from one pose to another over time.

If you have loop disable, then the time remaining nodes work. If you have loop enabled then all of the time nodes are always false.
it’s a checkbox in the animation. Easy to miss. I know I struggle with it every damn time.