We have a level sequence with a single spawnable actor track that has animation track that has an anim sequence. The anim sequence plays when the level sequence starts playing. The anim sequence has root motion enabled, and the actor and its anim Blueprint are set up to process the root motion parameters correctly.
Before we begin playing the level sequence, we bind a spawned actor to the spawnable in the level sequence. We trigger playback of the level sequence on BeginPlay in our map. We observed that the anim sequence does not play correctly on the spawned actor when the level sequence plays.
Digging into the issue, we discovered in \MovieSceneSkeletalAnimationTemplate.cpp inside FComponentAnimationActuator::Actuate, the call to ShouldUsePreviewPlayback returns true, because Player.GetPlaybackStatus() does not equal EMovieScenePlayerStatus::Playing. This results in the anim sequence playing on the spawned actor as if it is in preview mode. We found that if we put a 1-frame delay in the level sequence before playing the anim sequence, the anim sequence plays back as we expect, i.e. the play back uses the actor’s anim Blueprint to play back the sequence.
Is this a known bug in Sequencer? If so, what is the correct way to fix this bug?