Animation Synchronization

Unreal contains an animation Blueprint system that controls Actor animations. Animations are controlled in animation Blueprints, which are separate from the Actor Blueprints.

Synchronizing animation can be important in real-time games as animation can be tied to movement or actions, and desynchronization can look unnatural.

The Strix Replicator Component and the Strix Movement Synchronizer Component do not synchronize animation. Strix provides the Strix Animation Sync component for this purpose instead.

The Strix Animation Sync Component

The Strix Animation Sync component works in the same way as the Strix Replicator Component. Adding it to an Actor’s main Blueprint adds the same property synchronization functionality as the Replicator Component (See Replication) but for the animation Blueprint. It allows animation Blueprint properties to sync with both the Replicated and RepNotify flags.

Note

The Strix Animation Sync component also requires the Replicator Component.

The Strix Animation Sync component should be used for the specific variables that reflect user input. It is not suitable for fast-paced changes (as there are limited Ticks Per Second on the Strix Replicator) or Blueprint values that are normally calculated every tick, as this would make an animation that depends on those variables only update a few times a second, making the animation choppy. It is advisable to let the animation Blueprint do the hard work of calculating values for the animation, and only synchronize the important input values that may differ from owner Actor to replica Actor.

Note

Depending on how the game uses animation, the Strix Animation Sync component may not be needed. It is likely the replica and owner have the same animation Blueprint. For example, a running player may have its animation driven by velocity, and this velocity will be synchronized if the Strix Movement Synchronizer is attached to the Actor. As a result, the owner and replicas will play the same animation.