Navigation
API > API/Plugins > API/Plugins/Mover > API/Plugins/Mover/UMoverComponent
Description
Advance Usage. This will only become relevant to Mover in general when Layered Moves are automatically networked (pending, only Chaos Mover networks them by default) Queue a scheduled move to take place after delay (tunable in the NetworkPhysicsSettingsComponent) ensuring it gets executed on the same frame on all networked end points. Pros: Everybody executes on the same frame (or at roughly the same time in variable dt), less correction, no surprises. Cons: Delay in execution, needs to be masked with anticipation anim. Significant lag (several frames).
Default to using QueueLayeredMove instead, except for advanced use cases where it is important the move get executed on the same frame on all end points.
| Name | ScheduleLayeredMove |
| Type | function |
| Header File | /Engine/Plugins/Experimental/Mover/Source/Mover/Public/MoverComponent.h |
| Include Path | #include "MoverComponent.h" |
| Source | /Engine/Plugins/Experimental/Mover/Source/Mover/Private/MoverComponent.cpp |
void ScheduleLayeredMove
(
TSharedPtr < FLayeredMoveBase > Move
)
Parameters
| Name | Remarks |
|---|---|
| Move | The layered move to queue, which must be a FLayeredMoveBase sub - type. |
See Also
For an Autonomous Proxy Actor: An autonomous proxy might want to schedule a move that can be dodged by other players
-
for instance and air stomp
-
so that it starts executing on the same frame for sim proxies giving them a fair chance to dodge it. The server might also need to schedule
For an actor moved on the Server authoritatively. Since the server runs behind clients
-
if it wants to avoid corrections it needs to schedule execution of moves in the future so they get executed on the same frame on all end points. For instance
-
a platform changing direction as a result of some unpredictable event (such as colliding with a player character) should be scheduled if we want to guarantee correction-free physical interactions with that platform