Navigation
API > API/Runtime > API/Runtime/MovieScene
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UMovieSceneSequencePlayer
- UActorSequencePlayer
- ULevelSequencePlayer
- UTemplateSequencePlayer
References
| Module | MovieScene |
| Header | /Engine/Source/Runtime/MovieScene/Public/MovieSceneSequencePlayer.h |
| Include | #include "MovieSceneSequencePlayer.h" |
Syntax
class UMovieSceneSequencePlayer :
public UObject,
public IMovieScenePlayer,
public IMovieSceneSequenceTickManagerClient
Remarks
Abstract class that provides consistent player behaviour for various animation players
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bIgnorePlaybackReplication | When true, ignore playback replication events. | |
| uint32: 1 | bIsAsyncUpdate | Set to true when the player is currently in the main level update | |
| uint32: 1 | bPendingOnStartedPlaying | Set to true to invoke OnStartedPlaying on first update tick for started playing | |
| uint32: 1 | bReversePlayback | Whether we're currently playing in reverse. | |
| uint32: 1 | bSkipNextUpdate | Flag that allows the player to tick its time controller without actually evaluating the sequence | |
| uint32: 1 | bUpdateNetSync | Flag that notifies the player to check network synchronization on next update | |
| int32 | CurrentNumLoops | The number of times we have looped in the current playback | |
| FMovieSceneEntitySystemRunner * | CurrentRunner | Usually nullptr, but will be set when we are updating inside a TickFromSequenceTickManager call | |
| TOptional< FFrameTime > | DisableEventTriggersUntilTime | Disable event triggers until given time | |
| int32 | DurationFrames | Time (in playback frames) at which to stop playing the sequence (defaults to the upper bound of the sequence's play range) | |
| float | DurationSubFrames | ||
| FMovieSceneLatentActionManager | LatentActionManager | Local latent action manager for when we're running a blocking sequence | |
| FMovieSceneSequenceReplProperties | NetSyncProps | Replicated playback status and current time that are replicated to clients | |
| TScriptInterface< IMovieSceneSequencePlayerObserver > | Observer | Obeserver interface used for controlling whether the effects of this sequence can be seen even when it is playing back. | |
| FOnMovieSceneSequencePlayerEvent | OnFinished | Event triggered when the level sequence player finishes naturally (without explicitly calling stop) | |
| FOnMovieSceneSequencePlayerEvent | OnPause | Event triggered when the level sequence player is paused | |
| FOnMovieSceneSequencePlayerEvent | OnPlay | Event triggered when the level sequence player is played | |
| FOnMovieSceneSequencePlayerEvent | OnPlayReverse | Event triggered when the level sequence player is played in reverse | |
| FOnMovieSceneSequencePlayerEvent | OnStop | Event triggered when the level sequence player is stopped | |
| TScriptInterface< IMovieScenePlaybackClient > | PlaybackClient | External client pointer in charge of playing back this sequence | |
| FMovieSceneSequencePlaybackSettings | PlaybackSettings | Specific playback settings for the animation. | |
| FMovieScenePlaybackPosition | PlayPosition | Play position helper | |
| FMovieSceneRootEvaluationTemplateInstance | RootTemplateInstance | The root template instance we're evaluating | |
| TObjectPtr< UMovieSceneSequence > | Sequence | The sequence to play back | |
| TUniquePtr< UE::MovieScene::FSequenceWeights > | SequenceWeights | Sequence Weights | |
| int32 | SerialNumber | The serial number for the current update lifespan It is incremented every time we pass a "gate" such as an RPC call that stops/finishes the sequence. | |
| TArray< FServerTimeSample > | ServerTimeSamples | Array of server sequence times in seconds, with ping compensation baked in. | |
| TSharedPtr< FMovieSceneSpawnRegister > | SpawnRegister | Spawn register | |
| FFrameNumber | StartTime | Time (in playback frames) at which to start playing the sequence (defaults to the lower bound of the sequence's play range) | |
| TEnumAsByte< EMovieScenePlayerStatus::Type > | Status | Movie player status. | |
| TSharedPtr< FMovieSceneEntitySystemRunner > | SynchronousRunner | (Optional) Synchronous runner to use when no tick manager is in use | |
| TObjectPtr< UMovieSceneSequenceTickManager > | TickManager | Global tick manager, held here to keep it alive while world sequences are in play | |
| TSharedPtr< FMovieSceneTimeController > | TimeController | (Optional) Externally supplied time controller |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UMovieSceneSequencePlayer
(
const FObjectInitializer& |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| bool | CanPlay () |
||
| void | Changes the direction of playback (go in reverse if it was going forward, or vice versa) | ||
| void | FinishPlaybackInternal
(
FFrameTime TimeToFinishAt |
||
| TArray< UObject * > | GetBoundObjects
(
FMovieSceneObjectBindingID ObjectBinding |
Retrieve all objects currently bound to the specified binding identifier | |
| FQualifiedFrameTime | Get the current playback position | ||
| bool | Set whether to disable camera cuts | ||
| FFrameRate | |||
| FQualifiedFrameTime | GetDuration () |
Get the total duration of the sequence | |
| FQualifiedFrameTime | GetEndTime () |
Get the offset within the level sequence to finish playing | |
| int32 | Get this sequence's duration in frames | ||
| FFrameRate | GetFrameRate () |
Get this sequence's display rate. | |
| FFrameTime | |||
| TArray< FMovieSceneObjectBindingID > | GetObjectBindings
(
UObject* InObject |
Get the object bindings for the requested object | |
| TOptional< TRange< FFrameTime > > | GetPauseRange
(
const FFrameTime& NewPosition |
If the current sequence should pause (due to NewPosition overshooting a previously set ShouldPause) then a range of time that should be evaluated to reach there will be returned. | |
| UWorld * | |||
| float | GetPlayRate () |
Get the playback rate of this player. | |
| UMovieSceneSequence * | GetSequence () |
Access the sequence this player is playing | |
| FString | GetSequenceName
(
bool bAddClientInfo |
Get the name of the sequence this player is playing | |
| FQualifiedFrameTime | GetStartTime () |
Get the offset within the level sequence to start playing | |
| UMovieSceneSequenceTickManager * | Access this player's tick manager | ||
| TSharedPtr< FMovieSceneTimeController > | Retrieve the currently assigned time controller | ||
| void | Go to end and stop. | ||
| void | Initialize
(
UMovieSceneSequence* InSequence |
Initialize this player using its existing playback settings | |
| void | Initialize
(
UMovieSceneSequence* InSequence, |
Initialize this player with a sequence and some settings | |
| void | InitializeForTick
(
UObject* Context |
Ensure that this player's tick manager is set up correctly for the specified context | |
| bool | IsPaused () |
Check whether the sequence is paused. | |
| bool | IsPlaying () |
Check whether the sequence is actively playing. | |
| bool | IsReversed () |
Check whether playback is reversed. | |
| bool | |||
| void | OnLooped () |
||
| void | OnPaused () |
||
| FOnMovieSceneSequencePlayerUpdated & | |||
| void | |||
| void | OnStopped () |
||
| void | Pause () |
Pause playback. | |
| void | Play () |
Start playback forwards from the current time cursor position, using the current play rate. | |
| void | PlayInternal () |
||
| void | PlayLooping
(
int32 NumLoops |
Start playback from the current time cursor position, looping the specified number of times. | |
| void | PlayReverse () |
Reverse playback. | |
| void | PlayTo
(
FMovieSceneSequencePlaybackParams PlaybackParams, |
Play from the current position to the requested position and pause. | |
| void | QueueLatentAction
(
FMovieSceneSequenceLatentActionDelegate Delegate |
||
| void | RemoveWeight () |
Removes a previously assigned weight | |
| void | RemoveWeight
(
FMovieSceneSequenceID SequenceID |
Removes a previously assigned weight | |
| void | RestoreState () |
Restore any changes made by this player to their original state | |
| void | |||
| void | Scrub () |
Scrub playback. | |
| void | SetDisableCameraCuts
(
bool bInDisableCameraCuts |
Set whether to disable camera cuts | |
| void | SetFrameRange
(
int32 StartFrame, |
Set the valid play range for this sequence, determined by a starting frame number (in this sequence player's plaback frame), and a number of frames duration | |
| void | SetFrameRate
(
FFrameRate FrameRate |
Set the frame-rate that this player should play with, making all frame numbers in the specified time-space | |
| void | SetIgnorePlaybackReplication
(
bool bState |
Sets whether to listen or ignore playback replication events. | |
| void | SetPlaybackClient
(
TScriptInterface< IMovieScenePlaybackClient > InPlaybackClient |
Assign a playback client interface for this sequence player, defining instance data and binding overrides | |
| void | SetPlaybackPosition
(
FMovieSceneSequencePlaybackParams PlaybackParams |
Set the current time of the player by evaluating from the current time to the specified time, as if the sequence is playing. | |
| void | SetPlaybackSettings
(
const FMovieSceneSequencePlaybackSettings& InSettings |
Assign this player's playback settings | |
| void | SetPlayRate
(
float PlayRate |
Set the playback rate of this player. Negative values will play the animation in reverse. | |
| void | SetTimeController
(
TSharedPtr< FMovieSceneTimeController > InTimeController |
Assign a time controller for this sequence player allowing custom time management implementations. | |
| void | SetTimeControllerDirectly
(
TSharedPtr< FMovieSceneTimeController > InTimeController |
Assign a time controller for this sequence player allowing custom time management implementations. | |
| void | SetTimeRange
(
float StartTime, |
Set the valid play range for this sequence, determined by a starting time and a duration (in seconds) | |
| void | SetWeight
(
double InWeight, |
Set a manual weight to be multiplied with all blendable elements within the specified sequence | |
| void | SetWeight
(
double InWeight |
Set a manual weight to be multiplied with all blendable elements within this sequence | |
| bool | ShouldStopOrLoop
(
FFrameTime NewPosition |
||
| void | Stop () |
Stop playback and move the cursor to the end (or start, for reversed playback) of the sequence. | |
| void | Stop playback without moving the cursor. | ||
| void | StopInternal
(
FFrameTime TimeToResetTo |
||
| void | TearDown () |
Perform any tear-down work when this player is no longer (and will never) be needed | |
| void | Update
(
const float DeltaSeconds |
Update the sequence for the current time, if playing | |
| void | UpdateAsync
(
const float DeltaSeconds |
Update the sequence for the current time, if playing, asynchronously | |
| void | UpdateMovieSceneInstance
(
FMovieSceneEvaluationRange InRange, |
||
| void | UpdateMovieSceneInstance
(
FMovieSceneEvaluationRange InRange, |
||
| void | UpdateTimeCursorPosition
(
FFrameTime NewPosition, |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | BeginDestroy () |
Called before destroying the object. | |
| bool | CallRemoteFunction
(
UFunction* Function, |
Call the actor's function remotely | |
| int32 | GetFunctionCallspace
(
UFunction* Function, |
Return the space this function should be called. | |
| bool | IsSupportedForNetworking means an object can be referenced over the network | ||
| void | Called right after receiving a bunch |
Overridden from IMovieScenePlayer
| Type | Name | Description | |
|---|---|---|---|
| UObject * | AsUObject () |
Cast this player instance as a UObject if possible | |
| bool | Whether this player can update the camera cut | ||
| UMovieSceneEntitySystemLinker * | Called to retrieve or construct an entity linker for the specified playback context | ||
| FMovieSceneRootEvaluationTemplateInstance & | Access the evaluation template that we are playing back | ||
| IMovieScenePlaybackClient * | Access the client in charge of playback | ||
| EMovieScenePlayerStatus::Type | |||
| FMovieSceneSpawnRegister & | Obtain an object responsible for managing movie scene spawnables | ||
| void | GetViewportSettings
(
TMap< FViewportClient*, EMovieSceneViewportParams >& ViewportParamsMap |
Get the current perspective viewport settings | |
| bool | Whether this player utilizes dynamic weighting | ||
| bool | IsDisablingEventTriggers
(
FFrameTime& DisabledUntilTime |
Returns whether event triggers are disabled and if so, until what time. | |
| void | PostEvaluation
(
const FMovieSceneContext& Context |
Called by the evaluation system after evaluation has occured | |
| void | PreEvaluation
(
const FMovieSceneContext& Context |
Called by the evaluation system when evaluation has just started. | |
| void | ResolveBoundObjects
(
const FGuid& InBindingId, |
Resolve objects bound to the specified binding ID | |
| void | SetPlaybackStatus
(
EMovieScenePlayerStatus::Type InPlaybackStatus |
||
| void | SetViewportSettings
(
const TMap< FViewportClient*, EMovieSceneViewportParams >& ViewportParamsMap |
Set the perspective viewport settings | |
| void | UpdateCameraCut
(
UObject* CameraObject, |
Updates the perspective viewports with the actor to view through |
Overridden from IMovieSceneSequenceTickManagerClient
| Type | Name | Description | |
|---|---|---|---|
| void | TickFromSequenceTickManager
(
float DeltaSeconds, |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FMovieSceneUpdateArgs | |||
| FOnMovieSceneSequencePlayerUpdated | An event that is broadcast each time this level sequence player is updated | ||
| FServerTimeSample |
Typedefs
| Name | Description |
|---|---|
| FOnEvaluationCallback | Pre and post evaluation callbacks, for async evaluations |