New Relevant Anim Time Transitions not working initially

I’m having an issue with the new “Relevant Anim” nodes in my transitions.

It seems like the transitions don’t read the relevant anim until the second time passing through the state.

Here is an example:

The transition from “JumpLand” to “Walk” uses the following:

The first time around the transition is instant, here is the “JumpLand” state after the first time passing through the transition:

58109-transition2b.png

As you can see from the amount of the animation that has played, it was just the time for the transition length. Usually the animation would play to the end.

However, when going through the transition a second, or any further amount of times, the animation plays all the way through as intended.

If I replace the transition with the old “Time Remaining” node everything works fine the first time around.

Hi Rouviere,

I have not been able to reproduce the issue with the following state machine set up:

I replaced the “Time Remaining Ratio” with the “Get Relevant Anim Time Remaining” node for both the Enter JumpLoop transition and the transition from JumpEnd to the IdleWalkRun blendspace.

If you can see something I’m missing in my reproduction, let me know. Otherwise, you can send your project as an attachment in a zip file here, via Dropbox, or as a private message to me on the .

Thanks

Hi .

As far as I can tell you have the same setup as I do.

My project is quite large, and I have amazingly slow upload speeds.

I just started downloading 4.9.1 before you replied. As soon as the update is done I will try and replicate the issue in a small project, and then I’ll get back to you.

Thanks.

Okay, I was able to replicate the error in a new ThirdPerson project in 4.9.1.

The first time the character jumps, the JumpStart animation only plays for I believe however long the transition takes.

It’s difficult to spot, but if you look at the legs on the character you’ll notice. Also, if you look at the Animation Blueprint while the game is active, the slider will stop only slightly into the animation the first time.

Once the transition has been taken once, it seems to work correctly.

Here is a link to the project on dropbox:

Thank you.

Hi Rouviere,

Thanks for taking the time to submit a sample project and clarifying where the lag is occurring. I have used this information to submit the following bug report: JIRA [21137]. When this issue has been corrected we will notify you with an update to this post.

Thanks, again, for your help in improving UE4!

I have the same issue, using a separate boolean for the time being to work around this.

Same issue here, any progress? Is it fixed in 4.10?
(I am working in 4.9, unfortunately I can’t update for a while).

This bug is still on the list to be fixed. When a bug has been fixed we update the original post the bug was reported on (in this case, this one) in order to help keep track of what is opened and what needs to be addressed. I will, however, make a note on the report that there is increased interest in this issue.

Thanks for the feedback.

Don’t mean to pile on, but I would like to add that I am experiencing this exact same issue in my project (4.10.1). Glad this is being looked into!

Here’s a workaround:

Relevant time remaining seems to return 0.0 for a single tick, before it starts returning the proper value (I’m guessing the bug is that it takes one tick to determine which animation is the relevant one). So the workaround is to exclude time remaining == 0.0 from your transition rule. That is, use float in range instead, with Inclusive Min: false:

Thanks for the workaround! That works! Looking at the code, the issue is indeed that on the first frame, the blend weight of everything is still 0 at the time the anim graph is evaluated, and that’s what’s used to determine relevancy.

Workaround is great, thanks! +1 for the actual fix - we’re in 4.10.2

Still seemed bugged…
I also went with a bool to work around but its a bit of a hassle since now I have to add a delay the length of the animation every time i want to make sure. But it seems to be happen at random and more so the more complex the state is.