UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IMovieScenePlayer Class Referenceabstract

#include <IMovieScenePlayer.h>

+ Inheritance diagram for IMovieScenePlayer:

Public Member Functions

MOVIESCENE_API IMovieScenePlayer ()
 
virtual MOVIESCENE_API ~IMovieScenePlayer ()
 
virtual FMovieSceneRootEvaluationTemplateInstanceGetEvaluationTemplate ()=0
 
virtual UMovieSceneEntitySystemLinkerConstructEntitySystemLinker ()
 
virtual UObjectAsUObject ()
 
virtual void SetViewportSettings (const TMap< FViewportClient *, EMovieSceneViewportParams > &ViewportParamsMap)
 
virtual void GetViewportSettings (TMap< FViewportClient *, EMovieSceneViewportParams > &ViewportParamsMap) const
 
virtual EMovieScenePlayerStatus::Type GetPlaybackStatus () const =0
 
virtual void SetPlaybackStatus (EMovieScenePlayerStatus::Type InPlaybackStatus)=0
 
virtual MOVIESCENE_API void ResolveBoundObjects (const FGuid &InBindingId, FMovieSceneSequenceID SequenceID, UMovieSceneSequence &Sequence, UObject *ResolutionContext, TArray< UObject *, TInlineAllocator< 1 > > &OutObjects) const
 
virtual IMovieScenePlaybackClientGetPlaybackClient ()
 
const IMovieScenePlaybackClientGetPlaybackClient () const
 
virtual FMovieSceneSpawnRegisterGetSpawnRegister ()
 
virtual void OnObjectSpawned (UObject *InObject, const FMovieSceneEvaluationOperand &Operand)
 
virtual void NotifyBindingUpdate (const FGuid &InGuid, FMovieSceneSequenceIDRef InSequenceID, TArrayView< TWeakObjectPtr<> > Objects) override
 
virtual void NotifyBindingsChanged () override
 
FMovieSceneEvaluationOperandGetBindingOverride (const FMovieSceneEvaluationOperand &InOperand)
 
void AddBindingOverride (const FMovieSceneEvaluationOperand &InOperand, const FMovieSceneEvaluationOperand &InOverrideOperand)
 
void RemoveBindingOverride (const FMovieSceneEvaluationOperand &InOperand)
 
void ResetDirectorInstances ()
 
UObjectGetOrCreateDirectorInstance (TSharedRef< const UE::MovieScene::FSharedPlaybackState > SharedPlaybackState, FMovieSceneSequenceIDRef SequenceID)
 
virtual MOVIESCENE_API void PopulateUpdateFlags (UE::MovieScene::ESequenceInstanceUpdateFlags &OutFlags)
 
virtual UObjectGetPlaybackContext () const
 
virtual MOVIESCENE_API TArray< UObject * > GetEventContexts () const
 
virtual MOVIESCENE_API bool IsDisablingEventTriggers (FFrameTime &DisabledUntilTime) const
 
virtual bool IsPreview () const
 
virtual bool HasDynamicWeighting () const
 
virtual void PreEvaluation (const FMovieSceneContext &Context)
 
virtual void PostEvaluation (const FMovieSceneContext &Context)
 
virtual TScriptInterface< IMovieSceneSequencePlayerObserverGetObserver ()
 
virtual MOVIESCENE_API FGuid CreateBinding (UMovieSceneSequence *InSequence, UObject *InObject)
 
MOVIESCENE_API TArrayView< TWeakObjectPtr<> > FindBoundObjects (const FGuid &ObjectBindingID, FMovieSceneSequenceIDRef SequenceID)
 
TArrayView< TWeakObjectPtr<> > FindBoundObjects (const FMovieSceneEvaluationOperand &Operand)
 
FGuid FindObjectId (UObject &InObject, FMovieSceneSequenceIDRef SequenceID)
 
FGuid FindCachedObjectId (UObject &InObject, FMovieSceneSequenceIDRef SequenceID)
 
void SavePreAnimatedState (UObject &InObject, FMovieSceneAnimTypeID InTokenType, const IMovieScenePreAnimatedTokenProducer &InProducer)
 
void SavePreAnimatedState (FMovieSceneAnimTypeID InTokenType, const IMovieScenePreAnimatedGlobalTokenProducer &InProducer)
 
void RestorePreAnimatedState ()
 
void DiscardPreAnimatedState ()
 
MOVIESCENE_API void InvalidateCachedData ()
 
MOVIESCENE_API bool IsEvaluating () const
 
MOVIESCENE_API TSharedPtr< UE::MovieScene::FSharedPlaybackStateFindSharedPlaybackState ()
 
MOVIESCENE_API TSharedPtr< const UE::MovieScene::FSharedPlaybackStateFindSharedPlaybackState () const
 
MOVIESCENE_API TSharedRef< UE::MovieScene::FSharedPlaybackStateGetSharedPlaybackState ()
 
MOVIESCENE_API TSharedRef< const UE::MovieScene::FSharedPlaybackStateGetSharedPlaybackState () const
 
uint16 GetUniqueIndex () const
 
virtual MOVIESCENE_API void InitializeRootInstance (TSharedRef< UE::MovieScene::FSharedPlaybackState > NewSharedPlaybackState)
 
virtual bool CanUpdateCameraCut () const
 
virtual void UpdateCameraCut (UObject *CameraObject, UObject *UnlockIfCameraObject=nullptr, bool bJumpCut=false)
 
virtual void UpdateCameraCut (UObject *CameraObject, const EMovieSceneCameraCutParams &CameraCutParams)
 
MOVIESCENE_API FMovieSceneEvaluationStateGetEvaluationState ()
 
MOVIESCENE_API UE::MovieScene::IStaticBindingOverridesPlaybackCapabilityGetStaticBindingOverrides ()
 

Static Public Member Functions

static MOVIESCENE_API IMovieScenePlayerGet (uint16 InUniqueIndex)
 
static MOVIESCENE_API void Get (TArray< IMovieScenePlayer * > &OutPlayers, bool bOnlyUnstoppedPlayers)
 
static MOVIESCENE_API void SetIsEvaluatingFlag (uint16 InUniqueIndex, bool bIsUpdating)
 

Public Attributes

FMovieSceneEvaluationState State
 
FMovieScenePreAnimatedState PreAnimatedState
 
TMap< FMovieSceneEvaluationOperand, FMovieSceneEvaluationOperand > & BindingOverrides
 

Protected Member Functions

virtual MOVIESCENE_API void ResolveBoundObjects (UE::UniversalObjectLocator::FResolveParams &ResolveParams, const FGuid &InBindingId, FMovieSceneSequenceID SequenceID, UMovieSceneSequence &Sequence, TArray< UObject *, TInlineAllocator< 1 > > &OutObjects) const
 

Friends

struct FMovieSceneObjectCache
 

Detailed Description

Interface for movie scene players Provides information for playback of a movie scene

Constructor & Destructor Documentation

◆ IMovieScenePlayer()

PRAGMA_DISABLE_DEPRECATION_WARNINGS IMovieScenePlayer::IMovieScenePlayer ( )

◆ ~IMovieScenePlayer()

PRAGMA_ENABLE_DEPRECATION_WARNINGS PRAGMA_DISABLE_DEPRECATION_WARNINGS IMovieScenePlayer::~IMovieScenePlayer ( )
virtual

Member Function Documentation

◆ AddBindingOverride()

void IMovieScenePlayer::AddBindingOverride ( const FMovieSceneEvaluationOperand InOperand,
const FMovieSceneEvaluationOperand InOverrideOperand 
)

Adds an override for the given operand

◆ AsUObject()

virtual UObject * IMovieScenePlayer::AsUObject ( )
inlinevirtual

Cast this player instance as a UObject if possible

Reimplemented in FMovieSceneLegacyPlayer, UMovieSceneSequencePlayer, and UUMGSequencePlayer.

◆ CanUpdateCameraCut()

virtual bool IMovieScenePlayer::CanUpdateCameraCut ( ) const
inlinevirtual

◆ ConstructEntitySystemLinker()

virtual UMovieSceneEntitySystemLinker * IMovieScenePlayer::ConstructEntitySystemLinker ( )
inlinevirtual

Called to retrieve or construct an entity linker for the specified playback context

Reimplemented in FMovieSceneLegacyPlayer, UMovieSceneSequencePlayer, and UUMGSequencePlayer.

◆ CreateBinding()

FGuid IMovieScenePlayer::CreateBinding ( UMovieSceneSequence InSequence,
UObject InObject 
)
virtual

◆ DiscardPreAnimatedState()

void IMovieScenePlayer::DiscardPreAnimatedState ( )
inline

Discard all pre-animated state without restoring it

◆ FindBoundObjects() [1/2]

TArrayView< TWeakObjectPtr<> > IMovieScenePlayer::FindBoundObjects ( const FGuid ObjectBindingID,
FMovieSceneSequenceIDRef  SequenceID 
)

Locate objects bound to the specified object guid, in the specified sequence

Note
: Objects lists are cached internally until they are invalidate.
Parameters
ObjectBindingIDThe object to resolve
SequenceIDID of the sequence to resolve for
Returns
Iterable list of weak object pointers pertaining to the specified GUID

◆ FindBoundObjects() [2/2]

TArrayView< TWeakObjectPtr<> > IMovieScenePlayer::FindBoundObjects ( const FMovieSceneEvaluationOperand Operand)
inline

Locate objects bound to the specified sequence operand

Note
: Objects lists are cached internally until they are invalidate.
Parameters
OperandThe movie scene operand to resolve
Returns
Iterable list of weak object pointers pertaining to the specified GUID

◆ FindCachedObjectId()

FGuid IMovieScenePlayer::FindCachedObjectId ( UObject InObject,
FMovieSceneSequenceIDRef  SequenceID 
)
inline

Attempt to find the object binding ID for the specified object, in the specified sequence

Note
: Does not clear the existing cache
Parameters
InObjectThe object to find a GUID for
SequenceIDThe sequence ID to search within
Returns
The guid of the object's binding, or zero guid if it was not found

◆ FindObjectId()

FGuid IMovieScenePlayer::FindObjectId ( UObject InObject,
FMovieSceneSequenceIDRef  SequenceID 
)
inline

Attempt to find the object binding ID for the specified object, in the specified sequence

Note
: Will forcably resolve all out-of-date object mappings in the sequence
Parameters
InObjectThe object to find a GUID for
SequenceIDThe sequence ID to search within
Returns
The guid of the object's binding, or zero guid if it was not found

◆ FindSharedPlaybackState() [1/2]

TSharedPtr< UE::MovieScene::FSharedPlaybackState > IMovieScenePlayer::FindSharedPlaybackState ( )

Returns the evaluated sequence instance's shared playback state, if any.

◆ FindSharedPlaybackState() [2/2]

TSharedPtr< const UE::MovieScene::FSharedPlaybackState > IMovieScenePlayer::FindSharedPlaybackState ( ) const

◆ Get() [1/2]

void IMovieScenePlayer::Get ( TArray< IMovieScenePlayer * > &  OutPlayers,
bool  bOnlyUnstoppedPlayers 
)
static

◆ Get() [2/2]

PRAGMA_ENABLE_DEPRECATION_WARNINGS IMovieScenePlayer * IMovieScenePlayer::Get ( uint16  InUniqueIndex)
static

◆ GetBindingOverride()

FMovieSceneEvaluationOperand * IMovieScenePlayer::GetBindingOverride ( const FMovieSceneEvaluationOperand InOperand)

Retrieves any override for the given operand

◆ GetEvaluationState()

FMovieSceneEvaluationState * IMovieScenePlayer::GetEvaluationState ( )

Gets the evaluation state that stores global state to do with the playback operation

◆ GetEvaluationTemplate()

virtual FMovieSceneRootEvaluationTemplateInstance & IMovieScenePlayer::GetEvaluationTemplate ( )
pure virtual

Access the evaluation template that we are playing back

Implemented in FNullPlayer, Impl::FTestMovieScenePlayer, FMovieSceneLegacyPlayer, UMovieSceneSequencePlayer, and UUMGSequencePlayer.

◆ GetEventContexts()

TArray< UObject * > IMovieScenePlayer::GetEventContexts ( ) const
virtual

Access the event contexts for this movie scene player

Reimplemented in ULevelSequencePlayer.

◆ GetObserver()

virtual TScriptInterface< IMovieSceneSequencePlayerObserver > IMovieScenePlayer::GetObserver ( )
inlinevirtual

Reimplemented in UMovieSceneSequencePlayer.

◆ GetOrCreateDirectorInstance()

UObject * IMovieScenePlayer::GetOrCreateDirectorInstance ( TSharedRef< const UE::MovieScene::FSharedPlaybackState SharedPlaybackState,
FMovieSceneSequenceIDRef  SequenceID 
)

Gets a new or existing director blueprint instance for the given root or sub sequence

◆ GetPlaybackClient() [1/2]

virtual IMovieScenePlaybackClient * IMovieScenePlayer::GetPlaybackClient ( )
inlinevirtual

Access the client in charge of playback

Returns
A pointer to the playback client, or nullptr if one is not available

Reimplemented in FMovieSceneLegacyPlayer, UMovieSceneSequencePlayer, and UUMGSequencePlayer.

◆ GetPlaybackClient() [2/2]

const IMovieScenePlaybackClient * IMovieScenePlayer::GetPlaybackClient ( ) const
inline

◆ GetPlaybackContext()

virtual UObject * IMovieScenePlayer::GetPlaybackContext ( ) const
inlinevirtual

Access the playback context for this movie scene player

Reimplemented in ULevelSequencePlayer, FMovieSceneLegacyPlayer, and UUMGSequencePlayer.

◆ GetPlaybackStatus()

virtual EMovieScenePlayerStatus::Type IMovieScenePlayer::GetPlaybackStatus ( ) const
pure virtual
Returns
whether the player is currently playing, scrubbing, etc.

Implemented in FNullPlayer, Impl::FTestMovieScenePlayer, FMovieSceneLegacyPlayer, UMovieSceneSequencePlayer, and UUMGSequencePlayer.

◆ GetSharedPlaybackState() [1/2]

TSharedRef< UE::MovieScene::FSharedPlaybackState > IMovieScenePlayer::GetSharedPlaybackState ( )

Returns the evaluated sequence instance's shared playback state, asserts if there is none.

◆ GetSharedPlaybackState() [2/2]

TSharedRef< const UE::MovieScene::FSharedPlaybackState > IMovieScenePlayer::GetSharedPlaybackState ( ) const

◆ GetSpawnRegister()

virtual FMovieSceneSpawnRegister & IMovieScenePlayer::GetSpawnRegister ( )
inlinevirtual

Obtain an object responsible for managing movie scene spawnables

Reimplemented in FMovieSceneLegacyPlayer, UMovieSceneSequencePlayer, and UUMGSequencePlayer.

◆ GetStaticBindingOverrides()

UE::MovieScene::IStaticBindingOverridesPlaybackCapability * IMovieScenePlayer::GetStaticBindingOverrides ( )

Gets the list of binding overrides to use for the sequence

◆ GetUniqueIndex()

uint16 IMovieScenePlayer::GetUniqueIndex ( ) const
inline

◆ GetViewportSettings()

virtual void IMovieScenePlayer::GetViewportSettings ( TMap< FViewportClient *, EMovieSceneViewportParams > &  ViewportParamsMap) const
inlinevirtual

◆ HasDynamicWeighting()

virtual bool IMovieScenePlayer::HasDynamicWeighting ( ) const
inlinevirtual

Whether this player utilizes dynamic weighting

Reimplemented in UMovieSceneSequencePlayer.

◆ InitializeRootInstance()

void IMovieScenePlayer::InitializeRootInstance ( TSharedRef< UE::MovieScene::FSharedPlaybackState NewSharedPlaybackState)
virtual

Initializes a new root sequence instance and its shared playback state. This adds all the player's playback capabilities to the given state.

Reimplemented in ULevelSequencePlayer, FMovieSceneLegacyPlayer, and UUMGSequencePlayer.

◆ InvalidateCachedData()

void IMovieScenePlayer::InvalidateCachedData ( )

Invalidate any cached state contained within this player causing all entities to be forcibly re-linked and evaluated

◆ IsDisablingEventTriggers()

bool IMovieScenePlayer::IsDisablingEventTriggers ( FFrameTime DisabledUntilTime) const
virtual

Returns whether event triggers are disabled and if so, until what time.

◆ IsEvaluating()

bool IMovieScenePlayer::IsEvaluating ( ) const

◆ IsPreview()

virtual bool IMovieScenePlayer::IsPreview ( ) const
inlinevirtual

Test whether this is a preview player or not. As such, playback range becomes insignificant for things like spawnables

◆ NotifyBindingsChanged()

virtual void IMovieScenePlayer::NotifyBindingsChanged ( )
inlineoverridevirtual

Called whenever any object bindings have changed

Reimplemented from UE::MovieScene::IObjectBindingNotifyPlaybackCapability.

◆ NotifyBindingUpdate()

virtual void IMovieScenePlayer::NotifyBindingUpdate ( const FGuid InGuid,
FMovieSceneSequenceIDRef  InSequenceID,
TArrayView< TWeakObjectPtr<> >  Objects 
)
inlineoverridevirtual

Called whenever an object binding has been resolved to give the player a chance to interact with the objects before they are animated

Parameters
InGuidThe guid of the object binding that has been resolved
InSequenceIDThe ID of the sequence in which the object binding resides
ObjectsThe array of objects that were resolved

Reimplemented from UE::MovieScene::IObjectBindingNotifyPlaybackCapability.

◆ OnObjectSpawned()

virtual void IMovieScenePlayer::OnObjectSpawned ( UObject InObject,
const FMovieSceneEvaluationOperand Operand 
)
inlinevirtual

◆ PopulateUpdateFlags()

void IMovieScenePlayer::PopulateUpdateFlags ( UE::MovieScene::ESequenceInstanceUpdateFlags OutFlags)
virtual

Called to initialize the flag structure that denotes what functions need to be called on this updater

◆ PostEvaluation()

virtual void IMovieScenePlayer::PostEvaluation ( const FMovieSceneContext Context)
inlinevirtual

Called by the evaluation system after evaluation has occured

Reimplemented in UMovieSceneSequencePlayer.

◆ PreEvaluation()

virtual void IMovieScenePlayer::PreEvaluation ( const FMovieSceneContext Context)
inlinevirtual

Called by the evaluation system when evaluation has just started.

Reimplemented in UMovieSceneSequencePlayer.

◆ RemoveBindingOverride()

void IMovieScenePlayer::RemoveBindingOverride ( const FMovieSceneEvaluationOperand InOperand)

Removes any override set for the given operand

◆ ResetDirectorInstances()

void IMovieScenePlayer::ResetDirectorInstances ( )

Remove all director blueprint instances

◆ ResolveBoundObjects() [1/2]

void IMovieScenePlayer::ResolveBoundObjects ( const FGuid InBindingId,
FMovieSceneSequenceID  SequenceID,
UMovieSceneSequence Sequence,
UObject ResolutionContext,
TArray< UObject *, TInlineAllocator< 1 > > &  OutObjects 
) const
virtual

Resolve objects bound to the specified binding ID

Parameters
InBindingIdThe ID relating to the object(s) to resolve
OutObjectsContainer to populate with the bound objects

◆ ResolveBoundObjects() [2/2]

void IMovieScenePlayer::ResolveBoundObjects ( UE::UniversalObjectLocator::FResolveParams ResolveParams,
const FGuid InBindingId,
FMovieSceneSequenceID  SequenceID,
UMovieSceneSequence Sequence,
TArray< UObject *, TInlineAllocator< 1 > > &  OutObjects 
) const
protectedvirtual

Resolve objects bound to the specified binding ID

Parameters
InBindingIdThe ID relating to the object(s) to resolve
OutObjectsContainer to populate with the bound objects

Reimplemented in ULevelSequencePlayer, and UMovieSceneSequencePlayer.

◆ RestorePreAnimatedState()

void IMovieScenePlayer::RestorePreAnimatedState ( )
inline

Restore all pre-animated state

◆ SavePreAnimatedState() [1/2]

void IMovieScenePlayer::SavePreAnimatedState ( FMovieSceneAnimTypeID  InTokenType,
const IMovieScenePreAnimatedGlobalTokenProducer InProducer 
)
inline

Attempt to save specific state for the specified token state before it mutates state.

Note
: Will only call IMovieSceneExecutionToken::CacheExistingState if no state has been previously cached for the specified token type
Parameters
InTokenTypeUnique marker that identifies the originating token type
InProducerProducer implementation that defines how to create the preanimated token, if it doesn't already exist

◆ SavePreAnimatedState() [2/2]

void IMovieScenePlayer::SavePreAnimatedState ( UObject InObject,
FMovieSceneAnimTypeID  InTokenType,
const IMovieScenePreAnimatedTokenProducer InProducer 
)
inline

Attempt to save specific state for the specified token state before it animates an object.

Note
: Will only call IMovieSceneExecutionToken::CacheExistingState if no state has been previously cached for the specified token type
Parameters
InObjectThe object to cache state for
InTokenTypeUnique marker that identifies the originating token type
InProducerProducer implementation that defines how to create the preanimated token, if it doesn't already exist

◆ SetIsEvaluatingFlag()

void IMovieScenePlayer::SetIsEvaluatingFlag ( uint16  InUniqueIndex,
bool  bIsUpdating 
)
static

◆ SetPlaybackStatus()

virtual void IMovieScenePlayer::SetPlaybackStatus ( EMovieScenePlayerStatus::Type  InPlaybackStatus)
pure virtual
Parameters
PlaybackStatusThe playback status to set

Implemented in FNullPlayer, Impl::FTestMovieScenePlayer, FMovieSceneLegacyPlayer, UMovieSceneSequencePlayer, and UUMGSequencePlayer.

◆ SetViewportSettings()

virtual void IMovieScenePlayer::SetViewportSettings ( const TMap< FViewportClient *, EMovieSceneViewportParams > &  ViewportParamsMap)
inlinevirtual

◆ UpdateCameraCut() [1/2]

virtual void IMovieScenePlayer::UpdateCameraCut ( UObject CameraObject,
const EMovieSceneCameraCutParams CameraCutParams 
)
inlinevirtual

◆ UpdateCameraCut() [2/2]

virtual void IMovieScenePlayer::UpdateCameraCut ( UObject CameraObject,
UObject UnlockIfCameraObject = nullptr,
bool  bJumpCut = false 
)
inlinevirtual

Friends And Related Symbol Documentation

◆ FMovieSceneObjectCache

Member Data Documentation

◆ BindingOverrides

TMap<FMovieSceneEvaluationOperand, FMovieSceneEvaluationOperand>& IMovieScenePlayer::BindingOverrides

List of binding overrides to use for the sequence

◆ PreAnimatedState

FMovieScenePreAnimatedState IMovieScenePlayer::PreAnimatedState

Container that stores any per-animated state tokens

◆ State

FMovieSceneEvaluationState IMovieScenePlayer::State

Evaluation state that stores global state to do with the playback operation


The documentation for this class was generated from the following files: