Navigation
| Name | Mover |
| Type | Plugin |
| Part of Plugins | Mover |
| Location | /Engine/Plugins/Experimental/Mover/Source/Mover/ |
| Module Build Rules | Mover.Build.cs |
Classes
| Name | Remarks |
|---|---|
| FMover_OnBasedMovementApplied | Fired after based movement is applied to this MoverComponent. TransformDelta is this component's cumulative transform change in world space during the most recent movement simulation tick. (See @bSupportsKinematicBasedMovement) |
| FMover_OnGameplayTagAdded | Fired when a gameplay tag is added to the simulation (e.g. Mover_IsCrouching becomes set). |
| FMover_OnGameplayTagRemoved | Fired when a gameplay tag is removed from the simulation. |
| FMover_OnLanded | Fired after the actor lands on a valid surface. First param is the name of the mode this actor is in after landing. Second param is the hit result from hitting the floor. |
| FMover_OnMovementModeChanged | Fired after changing movement modes. First param is the name of the previous movement mode. Second is the name of the new movement mode. |
| FMover_OnPostFinalize | Fired after a frame has been finalized. This may be a resimulation or not. No changes to state are possible. Guaranteed to be on the game thread. |
| FMover_OnPostMovement | Fired during a simulation tick, after movement has occurred but before the state is finalized, allowing changes to the output state. |
| FMover_OnPostSimRollback | Fired after a rollback. |
| FMover_OnPostSimTick | Fired after a simulation tick, regardless of being a re-simulated frame or not. |
| FMover_OnPreMovement | Fired during a simulation tick, after the input is processed but before the actual move calculation. |
| FMover_OnPreSimTick | Fired just before a simulation tick, regardless of being a re-simulated frame or not. |
| FMover_OnStanceChanged | Fires when a stance is changed, if stance handling is enabled (see @SetHandleStanceChanges) Note: If a stance was just Activated it will fire with an invalid OldStance If a stance was just Deactivated it will fire with an invalid NewStance |
| FMover_OnTeleportFailed | Fired when a teleport has failed. |
| FMover_OnTeleportSucceeded | Fired when a teleport has succeeded. |
| FMover_OnTransitionTriggered | Fired after a transition has been triggered. |
| FMover_ProcessGeneratedMovement | Fired after proposed movement has been generated (i.e. after movement modes and layered moves have generated movement and mixed together). |
| FMoverCVDRuntimeTrace | Noop implementation in case this is compiled without Chaos Visual Debugger support (e.g. shipping) |
| FMoverModule | |
| FSimulationOutputRecord | |
| TRollbackCircularBuffer | Circular buffer specialized for use with rollback simulations providing concurrent access between active simulation and external users, as well as extra space for predictive work that's temporary and to be discarded. |
| UAirMovementUtils | AirMovementUtils: a collection of stateless static BP-accessible functions for a variety of air movement-related operations |
| UAsyncFallingMode | AsyncFallingMode: a default movement mode for moving through the air and jumping, typically influenced by gravity and air control This mode simulates movement without actually modifying any scene component(s). |
| UAsyncFlyingMode | AsyncFlyingMode: a default movement mode for moving through the air freely, but still interacting with blocking geometry. |
| UAsyncMovementUtils | AsyncMovementUtils: a collection of stateless static BP-accessible functions focused on testing potential movements in a threadsafe manner without actually causing immediate changes. |
| UAsyncNavWalkingMode | AsyncNavWalkingMode: a default movement mode for traversing surfaces and movement bases by using an active navmesh when moving the actor rather than collision checks. |
| UAsyncWalkingMode | AsyncWalkingMode: a default movement mode for traversing surfaces and movement bases (walking, running, sneaking, etc.) This mode simulates movement without actually modifying any scene component(s). |
| UBasedMovementUtils | MovementBaseUtils: a collection of stateless static BP-accessible functions for based movement |
| UBaseMovementMode | Base class for all movement modes, exposing simulation update methods for both C++ and blueprint extension |
| UBaseMovementModeTransition | Base class for all transitions |
| UBlueprintableTurnGenerator | Base class for blueprint-implemented turn generators. |
| UCharacterMoverComponent | Character Mover Component: this is a specialization of the core Mover Component that is set up with a classic character in mind. |
| UCommonLegacyMovementSettings | CommonLegacyMovementSettings: collection of settings that are shared between several of the legacy movement modes |
| UExactDampedTurnGenerator | Modular mechanism for turning a Mover actor in place using an exact damped spring |
| UFallingMode | FallingMode: a default movement mode for moving through the air and jumping, typically influenced by gravity and air control |
| UFloorQueryUtils | FloorQueryUtils: a collection of stateless static BP-accessible functions for a variety of operations involving floor checks |
| UFlyingMode | FlyingMode: a default movement mode for moving through the air freely, but still interacting with blocking geometry. |
| UGroundMovementUtils | GroundMovementUtils: a collection of stateless static BP-accessible functions for a variety of ground movement-related operations |
| UImmediateMovementModeTransition | Simple transition that evaluates true if a "next mode" is set. |
| UKinematicActorSimulation | |
| ULaunchMoveLogic | TODO: Create data for this? Is it not needed?! |
| ULayeredMoveLogic | Base class for all layered move logic that operates in tandem with instanced FLayeredMoveInstancedData. |
| ULinearTurnGenerator | Modular mechanism for turning a Mover actor in place using linear angular velocity. |
| ULinearVelocityMoveLogic | Linear Velocity (instanced): Induces a straight-line velocity on an actor over time. |
| UMotionWarpingMoverAdapter | |
| UMovementMixer | Class in charge of Mixing various moves when evaluating/combining moves. |
| UMovementModeStateMachine | * Any movement modes registered are co-owned by the state machine |
| UMovementRecordUtils | MovementRecordUtils: a collection of stateless static BP-accessible functions for movement record related operations |
| UMovementSettingsInterface | UMovementSettingsInterface: interface that must be implemented for any settings object to be shared between modes |
| UMovementUtils | MovementUtils: a collection of stateless static BP-accessible functions for a variety of movement-related operations |
| UMoverBackendLiaisonInterface | MoverBackendLiaisonInterface: any object or system wanting to be the driver of Mover actors must implement this. |
| UMoverBlackboard | MoverBlackboard: this is a simple generic map that can store any type, used as a way for decoupled systems to store calculations or transient state data that isn't necessary to reconstitute the movement simulation. |
| UMoverComponent | |
| UMoverDataCollectionLibrary | Blueprint helper functions for working with a Mover data collection. |
| UMoverDataModelBlueprintLibrary | Blueprint function library to make it easier to work with Mover data structs, since we can't add UFUNCTIONs to structs |
| UMoverDebugComponent | Component to help display debug information for actors using the Mover Component. |
| UMoverDeveloperSettings | Developer settings for the Mover plugin |
| UMoverInputProducerInterface | |
| UMoverNetworkPredictionLiaisonComponent | MoverNetworkPredictionLiaisonComponent: this component acts as a middleman between an actor's Mover component and the Network Prediction plugin. |
| UMoverSimulation | WIP Base class for a Mover simulation. |
| UMoverStandaloneLiaisonComponent | MoverStandaloneLiaison: this component acts as a backend driver for an actor's Mover component, for use in Standalone (non-networked) games. |
| UMoverTrajectoryPredictor | Trajectory predictor that can query from a Mover-driven actor, for use with Pose Search |
| UNavMoverComponent | NavMoverComponent: Responsible for implementing INavMoveInterface with UMoverComponent so pathfinding and other forms of navigation movement work. |
| UNavWalkingMode | NavWalkingMode: a default movement mode for traversing surfaces and movement bases by using an active navmesh when moving the actor rather than collision checks. |
| UNullMovementMode | NullMovementMode: a default do-nothing mode used as a placeholder when no other mode is active |
| UPlanarConstraintUtils | PlanarConstraintUtils: a collection of stateless static BP-accessible functions for working with planar constraints |
| UPlayMoverMontageCallbackProxy | Runtime object used as a proxy to an async blueprint task node that runs animation montages on Mover actors. |
| URollbackBlackboard | This is the core rollback blackboard, with API for external access and admin use. |
| URollbackBlackboardLibrary | RollbackBlackboardLibrary: a collection of static functions to help working with a rollback blackboard |
| USimpleFlyingMode | Basic flying mode that will move exactly where inputs request. |
| USimpleSpringWalkingMode | A walking mode that uses a critically damped spring for translation and rotation. |
| USimpleWalkingMode | Basic walking mode that implements the ground based walking |
| USmoothWalkingMode | A walking mode that provides a simplified version of the default walking mode model with additional options for smoothing. |
| UStanceSettings | StanceSettings: collection of settings that are shared through the mover component and contain stance related settings. |
| USwimmingMode | SwimmingMode: a default movement mode for traversing water volumes |
| UTurnGeneratorInterface | |
| UWalkingMode | WalkingMode: a default movement mode for traversing surfaces and movement bases (walking, running, sneaking, etc.) |
| UWaterMovementUtils | WaterMovementUtils: a collection of stateless static BP-accessible functions for a variety of water movement-related operations |
Structs
| Name | Remarks |
|---|---|
| FApplyMovementEffectParams | |
| FApplyMovementEffectParams_Async | Async safe parameters passed to ApplyMovementEffect_Async. |
| FApplyVelocityEffect | Apply Velocity: provides an impulse velocity to the actor after (optionally) forcing them into a particular movement mode Note: this only applies the impulse for one tick! |
| FAsyncTeleportEffect | Async Teleport: instantly moves an actor to a new location and rotation (compatible with async movement simulation) |
| FCharacterDefaultInputs | Data block containing all inputs that need to be authored and consumed for the default Mover character simulation. |
| FComputeCombinedVelocityParams | Input parameters for ComputeCombinedVelocity() |
| FComputeVelocityParams | Input parameters for compute velocity function. |
| FFloorCheckResult | Data about the floor for walking movement, used by Mover simulations |
| FFloorCheckSettings | Settings that control how floor checks are performed |
| FFloorResultData | |
| FFreeMoveParams | Input parameters for controlled free movement function. |
| FGroundMoveParams | Input parameters for controlled ground movement function. |
| FInstantMovementEffect | Instant Movement Effects are methods of affecting movement state directly on a Mover-based actor for one tick. |
| FJumpedEventData | |
| FJumpImpulseEffect | Jump Impulse: introduces an instantaneous upwards change in velocity. |
| FLandedEventData | |
| FLaunchMoveActivationParams | |
| FLaunchMoveData | |
| FLayeredMove_AnimRootMotion | Anim Root Motion Move: handles root motion from a montage played on the primary visual component (skeletal mesh). |
| FLayeredMove_AnimRootMotion_SimDriven | Async-capable variant of FLayeredMove_AnimRootMotion. |
| FLayeredMove_JumpImpulseOverDuration | Jump Impulse Over Duration: introduces an instantaneous upwards change in velocity over a duration(ms). |
| FLayeredMove_JumpTo | JumpTo: Moves this actor in a more jump-like manner - specifying height and distance of jump rather than just upwards speed Note: this layered move is only intended for Mover actors using Z as it's up direction |
| FLayeredMove_Launch | Launch Move: provides an impulse velocity to the actor after (optionally) forcing them into a particular movement mode |
| FLayeredMove_LinearVelocity | Linear Velocity: A method of inducing a straight-line velocity on an actor over time |
| FLayeredMove_MontageStateProvider | Note this will become obsolete once layered move logic is represented by a uobject, allowing use of interface classes. |
| FLayeredMove_MoveTo | MoveTo: Move Actor from the starting location to the target location over a duration of time. |
| FLayeredMove_MoveToDynamic | MoveToDynamic: Move Actor from the starting location to the target location over a duration of time with a moving target location You can either update TargetLocation manually to update the location this actor is moving towards or set an actor for this actor to move towards. |
| FLayeredMove_MultiJump | MultiJump: layered move for handling multiple jumps without touching the ground i.e. a double jump. |
| FLayeredMove_RadialImpulse | RadialImpulse applies a velocity pulling or pushing away from a given world location to the target actor |
| FLayeredMove_RootMotionAttribute | Root Motion Attribute Move: handles root motion from a mesh's custom attribute, ignoring scaling. |
| FLayeredMoveActivationParams | Packaged params struct for initializing a corresponding FLayeredMoveInstancedData Allows BP to do "templated" move data creation. |
| FLayeredMoveBase | Base class for all layered moves. |
| FLayeredMoveFinishVelocitySettings | Struct for LayeredMove Finish Velocity options. |
| FLayeredMoveGroup | A collection of layered moves affecting a movable actor. |
| FLayeredMoveInstance | Wrapper to encapsulate the split implementation of a move between a stateless ULayeredMoveLogic* object and an instance of FLayeredMoveInstancedData Those two pieces, in tandem, represent a "whole" functional Layered Move. |
| FLayeredMoveInstancedData | Instanced data created and replicated for each activation of a layered move |
| FLayeredMoveInstanceGroup | The group of information about currently active and queued moves. |
| FLinearVelocityMoveActivationParams | |
| FLinearVelocityMoveData | |
| FModeChangeParams | Params used when initiating a change in movement mode. |
| FModeRegistrationParams | Params used when initiating a change in movement mode registration. |
| FMovementModeChangedEventData | |
| FMovementModeChangeRecord | Information about a change in movement mode. |
| FMovementModeTickEndState | Filled out by a MovementMode during simulation tick to indicate its ending state, allowing for a residual time step and switching modes mid-tick |
| FMovementModifierBase | Movement Modifier: Used to apply changes that indirectly influence the movement simulation, without proposing or executing any movement, but still in sync with the sim. |
| FMovementModifierGroup | A collection of movement modifiers affecting a movable actor. |
| FMovementModifierHandle | Handle to identify movement modifiers. |
| FMovementModifierParams_Async | |
| FMovementRecord | Accounting record of a move as it is processed. |
| FMovementSubstep | A part of movement accounting, representing a single piece of a move operation, such as a slide, floor adjustment, etc. |
| FMoverAIInputs | AI-related movement inputs (e.g., RVO avoidance) |
| FMoverAnimMontageState | Data about montages that is replicated to simulated clients |
| FMoverAuxStateContext | Auxiliary state that is input into the simulation (changes rarely) |
| FMoverCollisionParams | Encapsulates a collision context involved in movement. |
| FMoverDataCollection | Contains a group of different FMoverDataStructBase-derived data, and supports net serialization of them. |
| FMoverDataPersistence | Info about data collection types that should always be present, and how they should propagate from one frame to the next |
| FMoverDataStructBase | Base type for all data structs used to compose Mover simulation model definition dynamically (input cmd, sync state, aux state) NOTE: for simulation state data (sync/aux), derive from FMoverStateData instead |
| FMoverDefaultSyncState | Data block containing basic sync state information. |
| FMoverDictionaryData | Data block containing mappings between names and commonly-used types, so that Blueprint-only devs can include custom data in their project's sync state or input cmds without needing native code changes. |
| FMoverDoubleBuffer | Double Buffer struct for various Mover data. |
| FMoverDynamicBasedMovementTickFunction | Tick function used to perform based movement at dynamic times throughout the world update time, typically out-of-band with the movement simulation |
| FMoverEventContext | Struct containing additional context about an event occurrence, such as what led to it. |
| FMoverGameplayTagChangeEventData | |
| FMoverInputCmdContext | The client generates this representation of "input" to the simulated actor for one simulation frame. |
| FMoverInputContainerDataStruct | Wrapper class that's used to include input structs in the sync state without them causing reconciliation. |
| FMoverMotionWarpingInputs | Replicated motion warp targets, populated from UMotionWarpingComponent on the locally-controlled machine and forwarded to all participants via the input command collection so every endpoint uses consistent targets during root motion warping on the worker thread. |
| FMoverOnImpactParams | Struct to hold params for when an impact happens. This contains all of the data for impacts including what gets passed to the FMover_OnImpact delegate. |
| FMoverPredictTrajectoryParams | FMoverPredictTrajectoryParams: parameter block for querying future trajectory samples based on a starting state See UMoverComponent::GetPredictedTrajectory |
| FMoverResolvedWarpTarget | A GT-resolved motion warp target, safe to read on a worker thread. |
| FMoverSchedulingInfo | |
| FMoverSimContext | FMoverSimContext: contains information about the systems supporting the active simulation. |
| FMoverSimDrivenMontageData | Simulation output for montage-driving layered moves. |
| FMoverSimDrivenMontageEntry | Per-move montage state snapshot produced by the simulation each substep. |
| FMoverSimEventGameThreadContext | |
| FMoverSimulationEventData | |
| FMoverStandaloneApplyStateTickFunction | Tick task for applying the new simulation state to the actor/components, after movement has been simulated. |
| FMoverStandaloneProduceInputTickFunction | Tick task for producing input before the next movement simulation step. |
| FMoverStandaloneSimulateMovementTickFunction | Tick task for advancing the movement simulation step, after input has been produced. |
| FMoverSyncState | State we are evolving frame to frame and keeping in sync (frequently changing). |
| FMoverTickEndData | Contains all state data produced by a simulation tick, including new simulation state |
| FMoverTickStartData | Contains all state data for the start of a simulation tick |
| FMoverTime | A time that can be a frame count or a floating point value. |
| FMoverTimeStep | |
| FMoverUserDefinedDataStruct | Wrapper class that's used to add User-Defined Struct instances to Mover Data Collections (input or state). |
| FMovingComponentSet | Encapsulates components involved in movement. |
| FOptionalFloorCheckResult | Used by some movement operations to conditionally return a floor check result, if one was performed |
| FPlanarConstraint | Encapsulates info about constraining movement to a plane, such as in a side-scroller |
| FProposedMove | Encapsulates info about an intended move that hasn't happened yet |
| FRelativeBaseInfo | Data about the object a Mover actor is basing its movement on, such as when standing on a moving platform |
| FRollbackBlackboardExternalWrapper | Wrapper class for external parties to access the blackboard. |
| FRollbackBlackboardSimWrapper | Wrapper class for in-simulation access to the blackboard. |
| FScheduledInstantMovementEffect | |
| FScheduledLayeredMove | |
| FSimulationOutputData | |
| FSimulationTickParams | Input parameters to provide context for SimulationTick functions. |
| FStanceModifier | Stances: Applies settings to the actor to make them go into different stances like crouch or prone(not implemented), affects actor maxacceleration and capsule height Note: This modifier currently uses the CDO of the actor to reset values to "standing" values. |
| FSwimmingControlSettings | Controls for the Swimming Movement. |
| FTeleportEffect | Teleport: instantly moves an actor to a new location and rotation For async-compatible teleportation, use AsyncTeleportEffect instead. |
| FTeleportFailedEventData | |
| FTeleportSucceededEventData | |
| FTrajectorySampleInfo | Encapsulates detailed trajectory sample info, from a move that has already occurred or one projected into the future |
| FTransitionEvalResult | Results from a movement mode transition evaluation |
| FUpdateWaterSplineDataParams | Input parameters for Updating WaterSplineData. |
| FWaterCheckResult | Data about the overlapping volume typically used for swimming |
| FWaterFlowSplineData | Data about the water volume and its interaction with the pawn used in calculating swimming movement. |
| FWaterMoveParams | Input parameters for ComputeControlledWaterMove() |
Interfaces
| Name | Remarks |
|---|---|
| IMovementSettingsInterface | |
| IMoverBackendLiaisonInterface | |
| IMoverInputProducerInterface | MoverInputProducerInterface: API for any object that can produce input for a Mover simulation frame |
| ITurnGeneratorInterface | TurnGeneratorInterface: API for generating an in-place orientation change, based on a starting state and a target orientation |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FMover_OnPostSimEventReceived | TMulticastDelegate_OneParam< void, const FMoverSimulationEventData & > | Fired when a new event has been received from the simulation. | MoverComponent.h |
| KinematicMoverStateTypes | TNetworkPredictionStateTypes< FMoverInputCmdContext, FMoverSyncState, FMoverAuxStateContext > | Backends/MoverNetworkPredictionLiaison.h | |
| NamedDataCollections | TArray< TPair< FName, const FMoverDataCollection * > > | ChaosVisualDebugger/MoverCVDRuntimeTrace.h |
Enums
Public
| Name | Remarks |
|---|---|
| EBlackboardPersistencePolicy | Determines how long a blackboard entry can be read after its value is set. |
| EBlackboardRollbackPolicy | Determines how a blackboard's buffered entries are treated when a rollback occurs |
| EBlackboardSizingPolicy | RollbackBlackboard: this is a generic map that stores any type of data for local-only access. |
| EInvalidationReason | |
| ELayeredMove_ConstantVelocitySettingsFlags | |
| ELayeredMoveFinishVelocityMode | |
| EMoveInputType | Used to identify how to interpret a movement input vector's values. |
| EMoveMixMode | |
| EMoverSmoothingMode | Options for how to handle smoothing frame data from the backend. |
| EMoverTickDependencyOrder | List of tick dependency order of execution relative to the Mover tick function. |
| EMoverTickPhase | List of Mover tick phases where different parts of work are being performed |
| EOffNavMeshBehavior | Options for what to do when we find ourselves off the nav mesh |
| EProjectNavMeshToGeometryBehavior | Options for what to do when we are projecting nav movement onto geometry from the nav mesh |
| ERollbackBufferFlags | |
| EStanceMode | |
| EStaticFloorCheckPolicy | Behavior policy for performing floor checks in walking mode when no movement is occurring. |
| ETeleportFailureReason |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| CVarLogAnimRootMotionSteps | FAutoConsoleVariable | DefaultMovementSet/LayeredMoves/AnimRootMotionLayeredMove.h | ||
| Mover_AnimRootMotion | FNativeGameplayTag | MoverTypes.h | ||
| Mover_AnimRootMotion_MeshAttribute | FNativeGameplayTag | DefaultMovementSet/LayeredMoves/RootMotionAttributeLayeredMove.h | ||
| Mover_AnimRootMotion_Montage | FNativeGameplayTag | DefaultMovementSet/LayeredMoves/AnimRootMotionLayeredMove.h | ||
| Mover_DisableLanding | FNativeGameplayTag | MoverTypes.h | ||
| Mover_IsCrouching | FNativeGameplayTag | MoverTypes.h | ||
| Mover_IsFalling | FNativeGameplayTag | MoverTypes.h | ||
| Mover_IsFlying | FNativeGameplayTag | MoverTypes.h | ||
| Mover_IsInAir | FNativeGameplayTag | MoverTypes.h | ||
| Mover_IsNavWalking | FNativeGameplayTag | MoverTypes.h | ||
| Mover_IsOnGround | FNativeGameplayTag | Gameplay tags. | MoverTypes.h | |
| Mover_IsSwimming | FNativeGameplayTag | MoverTypes.h | ||
| Mover_SkipAnimRootMotion | FNativeGameplayTag | MoverTypes.h | ||
| Mover_SkipVerticalAnimRootMotion | FNativeGameplayTag | MoverTypes.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void LogGameplayTagDriftDetect
(
const FString& ActorName, |
Logs the [GT:DriftDetect] header line and a [GT:DriftDetect:Event] line per queued event. | MoverGameplayTagLog.h | |
void NavWalkingUtils::CheckClientSideNavigationSettings
(
const UMoverComponent* MoverComponent |
DefaultMovementSet/Modes/NavWalkingMode.h | ||
bool operator!
(
ERollbackBufferFlags E |
MoveLibrary/RollbackCircularBuffer.h | ||
ERollbackBufferFlags operator&
(
ERollbackBufferFlags Lhs, |
MoveLibrary/RollbackCircularBuffer.h | ||
ERollbackBufferFlags & operator&=
(
ERollbackBufferFlags& Lhs, |
MoveLibrary/RollbackCircularBuffer.h | ||
ERollbackBufferFlags operator^
(
ERollbackBufferFlags Lhs, |
MoveLibrary/RollbackCircularBuffer.h | ||
ERollbackBufferFlags & operator^=
(
ERollbackBufferFlags& Lhs, |
MoveLibrary/RollbackCircularBuffer.h | ||
ERollbackBufferFlags operator|
(
ERollbackBufferFlags Lhs, |
MoveLibrary/RollbackCircularBuffer.h | ||
ERollbackBufferFlags & operator|=
(
ERollbackBufferFlags& Lhs, |
MoveLibrary/RollbackCircularBuffer.h | ||
ERollbackBufferFlags operator~
(
ERollbackBufferFlags E |
MoveLibrary/RollbackCircularBuffer.h |