[PlayableDirector] Evaluate at a particular time on a timeline where some action clips have RootMotion

Hello, I am working on a Cutscene system and was implementing a way for the user to “Skip” the cutscene.

The way I went about it is just by having something like this called when the user wants to skip:

private void Skip()
        {
            # _director is a PlayableDirector
            _director.time = _director.duration;
            _director.Evaluate();
        }

My issue is that for the characters that during the cutscene would have moved around due to their animations having rootMotion, their final position is not properly set at all when I do the Skip and instead stay at the position they are when Skip is called.

I notice that the same thing happens if I set _director.time to any other time, not just the timeline’s duration. The behavior is the same, the character does not move to the place it should have if the cutscene were just playing normally.

Is this a limitation of the Timeline? Should I not be using animations with RootMotion or something?

Cheers!