Harald
Maybe I'm not understanding the feature as it is designed. So what I thought Clip End Mix Out Duration
does is to blend the animation on the spine track index defined in the timeline track back to empty when the clip is done playing.
Example scenario I have a simple timeline asset of a single SpineAnimationStateTrack set to track index 1 and a single SpineAnimationStateClip with a jump animation reference asset assigned. Using the SkeletonAnimation Spineboy gameobject assigned to the playable director's track and idle set as its initial animation, I press play and expect to see the spineboy jump and then fully return to idle. Instead I see the Spineboy do his jump animation then get stuck in the last frame of his jump animation. He still moves his hip bone due to the jump animation not modifying it. So he's in the state where hes stuck in the last frame of the jump animation but his hip continues to move from the original idle animation, which I guess was playing throughout the duration of the jump but isn't noticeable.
However if I then toss an empty signal emitter on the marker track past the last frame of the SpineAnimationStateClip, which extends the duration of the entire timeline asset past the last frame of the clip, I can see the Spineboy empty out his jump animation frames and return fully to idle. So this leads me to believe that in the case where the SpineAnimationStateClip is the last object on the timeline, it doesn't do Clip End Mix Out Duration
properly.
I did do a debug breakpoint step through of the code before to try to understand what was going on. What I think was happening is that in SpineAnimationStateMixerBehaviour script when the code hits the OnGraphStop method, isPaused is set to true in the scenario where the clip is the last thing on the timeline asset and thus never fires HandleClipEnd.
I hope this is enough information to try to reproduce the issue I am seeing. Unless I misunderstood the feature entirely, it's something I am seeing on the most simple timeline setup. Thanks again for your time.