Weird bugs with negative play rate for animations

Hi,

I’ve encountered quite a number of animation-related bugs…I have a skeletal mesh with an associated (which has an animation sequence as well as an animation blueprint). Now while the animation plays fine via the animation blueprint using a playback rate of 1(or any positive value), it goes wrong for any negative playback rate(the animation appears to play at some arbitrarily large negative rate regardless of what’s given). What’s more, while “anim notify” events placed in the animation’s timeline track are correctly fired when playback rate is positive, strangely only some of them get fired when playback rate is negative. Additionally, while the “Play Rate” of a skeletal mesh component will correctly reverse playback an animation asset, it’ll only do so when I set the value to “-1” in the editor panel, but not when I set it via a blueprint node(seems as if negative values are ignored). Setting the "Global Anim Rate Scale"to “-1” in the editor panel will also reverse playback the animation asset correctly, but not when I set it via a blueprint node(the animation will playback insanely quickly in reverse). Any clues as to all this incoherent weirdness?
FYI, I’m using ver 4.7.5.

Thanks!

Hi ,

We had a bug reported recently(UE-12219) dealing with some of these issues. It has been fixed in our main branch, but won’t make it into any of the 4.7 hotfixes.

If you’d like to provide some repro steps for each problem you’re running into, I’d be happy to try them out in Main to see if the fix accounts for all of these use cases. Please separate them out in your response so I can go through them one at a time to confirm they are fixed.

I would hate for 4.8 to release and our fixes only cover half of your problems.

Thanks,

.

Marking as answered due to inactivity. Simply respond to this answer to re-open.

-.

Hi ,

I was using ver 4.6.1 when problems with negative play rate cropped up, which basically disappeared with ver 4.7.6.
However with animation mode set to “Animation Asset” on a skeletal mesh component, I did notice that:

  • the “Play” node will play the current animation taking into account the current play rate, but only once(subsequent calls to the node fail to trigger the animation again, unless the play rate is negative or looping is enabled)
  • conversely, the “Play Animation” node will play the specified animation ignoring the current play rate(seems to always use rate of 1), though subsequent calls are able to trigger the animation repeatedly

I’m guessing the “Play” node doesn’t reset the animation play position to the start every time it’s called, which explains why it can only play in reverse after having finished its forward cycle. Whereas conversely, the “Play Animation” node always resets the play position to the start every time it’s called, which is why it’s able to replay the animation. Is this correct?

So using the “Play” node, I can control the play rate but can only play the animation from its current play position(cannot replay from start, only reverse playback). While using the “Play Animation” node, I can replay from start but cannot control the play rate.

But why these peculiar limitations?

Hey ,

I’ve entered this behavior as bug UE-15564 (left here for internal tracking purposes)

-.