My animation controller has an animation state for “WalkRight”. I copied that state and checked “Mirror” on the copy in order to get a “Walk Left” state. This works perfectly fine.
My game has a rewind mechanic. When the game rewinds the animations should play in reverse. To achieve that I am setting an animator parameter called “TimeScale” to a negative value at runtime. All my animation states use this “TimeScale” as their speed multiplier.
Problem: Every transition that transitions to “Walk Left” causes the animation to freeze and play after about 1 second. During that delay my character uses some weird pose that might be the result of the transition blend. I can only reproduce this with a negative speed multiplier and a mirrored animation. The Animator shows the animation as “playing” (indicated by the blue bar at the bottom of the state) but nothing is playing. When the state reaches about half progress then the animation actually starts playing in reverse.
Does anyone know what I could be doing wrong or knows if this is a known issue?
- None of my animation states use exit time.
- I do use transition duration. But since the transition duration works flawlessly with a positive speed multiplier I wouldn’t know why it should break with a negative speed multiplier.