Search Issue Tracker

Fixed in 5.0.X

Votes

0

Found in

5.0.0b21

Issue ID

668490

Regression

No

Looping a portion of an animation with blended transitions

Animation

-

How to reproduce:

1. Open attached project
2. Open scene TestScene.unity
3. Select the TriggerDamageAtMidpoint game object
- In the Animator Window, notice how it has two animations: Idle and LoopingAnimation. They are both set to transition between each other.
- Idle -> LoopingAnimation has an Exit Time of 0.75 and a Transition Duration of 0.25
- LoopingAnimation -> Idle has an Exit Time of 1 and a Transition Duration of 0
- Also in the Animator Window, there is a parameter called StartLoopTrigger which triggers the transition from Idle to LoopingAnimation
- In the Animation window, note how the LoopingAnimation animation has 3 animation event points: RepeatStart(), DamageEvent() and RepeatEnd()
- Once called, the events should print in the console when they were called in the context of the current animation being played
- The repeating is controlled by the AnimationRepeater script
4. Play the Scene
- If the StartLoopTrigger was enabled before starting, the animations should start immediately, otherwise enable the trigger once.
- Notice how the console prints the events in order:

RepeatStart @ 0.25
DamageEvent @ 0.5
RepeatEnd @ 0.75
RepeatStart @ 0.25 <- Problem area
DamageEvent @ 0.25 <- Problem area
Then it loops.

This appears to be caused by the transition back to the Idle animation, as muting that transition causes everything to be printed properly, with 3 events per cycle.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.