UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IMovieSceneObjectSpawner.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
8
11class UMovieScene;
13class ISequencer;
15class UActorFactory;
16struct FTransformData;
17
18namespace UE::MovieScene
19{
20 struct FSharedPlaybackState;
21}
22
25
38
39
42{
43public:
49 virtual UClass* GetSupportedTemplateType() const = 0;
50
60
67
72 virtual bool IsEditor() const { return false; }
73
78 virtual int32 GetSpawnerPriority() const { return 0; }
79
80#if WITH_EDITOR
81
90 virtual TValueOrError<FNewSpawnable, FText> CreateNewSpawnableType(UObject& SourceObject, UMovieScene& OwnerMovieScene, UActorFactory* ActorFactory = nullptr) { return MakeError(NSLOCTEXT("IMovieSceneObjectSpawner", "NotSupported", "Not supported")); }
91
101 virtual void SetupDefaultsForSpawnable(UObject* SpawnedObject, const FGuid& Guid, const TOptional<FTransformData>& TransformData, TSharedRef<ISequencer> Sequencer, USequencerSettings* Settings) {}
102
103 /*
104 * Whether this spawner can set up defaults
105 *
106 * @param SpawnedObject The newly spawned object. This may be NULL in the case of a spawnable that has not yet been spawned.
107 * @return whether this spawned can set up defaults
108 */
110
116 virtual bool CanConvertSpawnableToPossessable(FMovieSceneSpawnable& Spawnable) const { return true; }
117
118#endif
119
120public:
121
124};
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_DELEGATE_RetVal(ReturnValueType, DelegateName)
Definition DelegateCombinations.h:41
#define NSLOCTEXT(InNamespace, InKey, InTextLiteral)
Definition Internationalization.h:300
TCallTraits< FMovieSceneSequenceID >::ParamType FMovieSceneSequenceIDRef
Definition MovieSceneSequenceID.h:93
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
UE_REWRITE TValueOrError_ErrorProxy< ArgTypes... > MakeError(ArgTypes &&... Args UE_LIFETIMEBOUND)
Definition ValueOrError.h:41
Definition IMovieSceneObjectSpawner.h:42
virtual bool IsEditor() const
Definition IMovieSceneObjectSpawner.h:72
virtual void DestroySpawnedObject(UObject &Object)=0
virtual UClass * GetSupportedTemplateType() const =0
virtual UObject * SpawnObject(FMovieSceneSpawnable &Spawnable, FMovieSceneSequenceIDRef TemplateID, TSharedRef< const UE::MovieScene::FSharedPlaybackState > SharedPlaybackState)=0
virtual ~IMovieSceneObjectSpawner()
Definition IMovieSceneObjectSpawner.h:123
virtual int32 GetSpawnerPriority() const
Definition IMovieSceneObjectSpawner.h:78
Definition IMovieScenePlayer.h:90
Definition SharedPointer.h:153
Definition ValueOrError.h:58
Definition Class.h:3793
Definition MovieScene.h:358
Definition Object.h:95
Definition ConstraintsManager.h:14
Definition Guid.h:109
Definition MovieSceneSpawnable.h:40
Definition IMovieSceneObjectSpawner.h:28
UObject * ObjectTemplate
Definition IMovieSceneObjectSpawner.h:33
FNewSpawnable()
Definition IMovieSceneObjectSpawner.h:29
FNewSpawnable(UObject *InObjectTemplate, FString InName)
Definition IMovieSceneObjectSpawner.h:30
FString Name
Definition IMovieSceneObjectSpawner.h:36
Definition TransformData.h:12
Definition Optional.h:131