Summary
In UE 5.7.4, when a looping BlendSpace with Match Sync Phases enabled plays as a SyncGroup Leader and crosses its loop boundary during a transition to an external AnimSequenceFollower in the same group, a marker-consistency assertion fails inside UAnimSequence::AdvanceMarkerPhaseAsFollower() and the editor terminates.
The issue was not observed when playing the BlendSpace alone. It reproduces when an external Follower is evaluated and consumes the inconsistent marker data produced by the Leader.
Description
FMarkerSyncData::CollectMarkersInRange() only uses the following condition:
At the loop boundary, NewPosition becomes less than PrevPosition:
No marker can satisfy both conditions, so the passed-marker list is returned empty.
However, the Leader's final Sync Position correctly reports the next marker after wrapping. This inconsistent information is propagated to the external AnimSequence Follower, causing the next-marker consistency check() inside UAnimSequence::AdvanceMarkerPhaseAsFollower() to fail.
BlendSpace samples are processed through a separate path, so without an external Follower, the BlendSpace-only configuration did not reach this validation in our tests.
Suggested Fix
When NewPosition is less than PrevPosition, collect markers from the following two ranges:
The loop offset should also be applied when calculating DeltaTimeWhenPassed for the
second range.
[Image Removed]
Steps to Reproduce
Results
The following marker-consistency check() fails inside
UAnimSequence::AdvanceMarkerPhaseAsFollower() :
[Image Removed]
Location:
Expected
Sync Markers in the wrapped range should be collected correctly when the BlendSpace crosses
its loop boundary. The Leader's final Sync Position and passed-marker list should remain
consistent, allowing the Follower to advance normally.
Easier Steps to Reproduce
1. Unzip SyncMarker.zip and Open SyncMarker.uproject with UE 5.7.4.
2. After the project opens, start PIE without providing input or editing any assets.
3. The Animation Blueprint automatically sets bStop to true 1.4 seconds after initialization.
4. A 0.35-second transition begins from the BlendSpace to the external AnimSequence.
5. Verify that the AnimSequence Follower marker-consistency assertion occurs and the editor terminates when the BlendSpace crosses its loop boundary during the transition.
Key sample settings:
To minimize the reproduction assets, the sample reuses MF_Unarmed_Walk_Fwd as both a BlendSpace sample and the external AnimSequence Follower. The issue does not depend on both Asset Players using the same AnimSequence; it depends on an external AnimSequence Follower in the same Sync Group consuming marker data produced by the BlendSpace Leader.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-387801 in the post.