UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ULevelStreaming Class Reference

#include <LevelStreaming.h>

+ Inheritance diagram for ULevelStreaming:

Classes

struct  FPackageNameMatcher
 

Public Types

enum  EReqLevelBlock { BlockAlwaysLoadedLevelsOnly , AlwaysBlock , NeverBlock }
 
- Public Types inherited from UObject
enum class  ENetFields_Private { NETFIELD_REP_START = 0 , NETFIELD_REP_END = -1 }
 
typedef UObject WithinClass
 

Public Member Functions

virtual ENGINE_API void PostLoad () override
 
virtual ENGINE_API void Serialize (FArchive &Ar) override
 
virtual const IWorldPartitionCellGetWorldPartitionCell () const
 
PRAGMA_DISABLE_DEPRECATION_WARNINGS ECurrentState GetCurrentState () const
 
PRAGMA_ENABLE_DEPRECATION_WARNINGS ENGINE_API ELevelStreamingState GetLevelStreamingState () const
 
ENGINE_API void BeginClientNetVisibilityRequest (bool bInShouldBeVisible)
 
ENGINE_API bool IsWaitingForNetVisibilityTransactionAck (ENetLevelVisibilityRequest InRequestType=ENetLevelVisibilityRequest::MakingInvisible) const
 
ENGINE_API void UpdateNetVisibilityTransactionState (bool bInShouldBeVisible, FNetLevelVisibilityTransactionId TransactionId)
 
bool GetShouldBeVisibleFlag () const
 
ENGINE_API void SetShouldBeVisible (bool bInShouldBeVisible)
 
virtual bool ShouldRequireFullVisibilityToRender () const
 
virtual bool CanReplicateStreamingStatus () const
 
virtual ENGINE_API void SetShouldBeLoaded (bool bInShouldBeLoaded)
 
int32 GetLevelLODIndex () const
 
ENGINE_API void SetLevelLODIndex (int32 LODIndex)
 
int32 GetPriority () const
 
ENGINE_API void SetPriority (int32 NewPriority)
 
ENGINE_API void SetPriorityOverride (int32 PriorityOverride)
 
ENGINE_API void ResetPriorityOverride ()
 
bool HasLoadRequestPending () const
 
bool HasLoadedLevel () const
 
const TArray< int32 > & GetAsyncRequestIDs () const
 
bool GetIsRequestingUnloadAndRemoval () const
 
ENGINE_API void SetIsRequestingUnloadAndRemoval (bool bInIsRequestingUnloadAndRemoval)
 
const TSoftObjectPtr< UWorld > & GetWorldAsset () const
 
virtual ENGINE_API void SetWorldAsset (const TSoftObjectPtr< UWorld > &NewWorldAsset)
 
ENGINE_API FString GetWorldAssetPackageName () const
 
virtual ENGINE_API FName GetWorldAssetPackageFName () const
 
ENGINE_API void SetWorldAssetByPackageName (FName InPackageName)
 
ENGINE_API void RenameForPIE (int PIEInstanceID, bool bKeepWorldAssetName=false)
 
virtual bool ShouldBeLoaded () const
 
virtual ENGINE_API bool ShouldBeVisible () const
 
virtual bool ShouldBlockOnUnload () const
 
virtual bool ShouldBeAlwaysLoaded () const
 
ENGINE_API FBox GetStreamingVolumeBounds ()
 
ULevelGetLoadedLevel () const
 
void ClearLoadedLevel ()
 
virtual ENGINE_API UWorldGetWorld () const override final
 
virtual ENGINE_API UWorldGetStreamingWorld () const
 
ENGINE_API bool IsLevelVisible () const
 
bool IsLevelLoaded () const
 
ENGINE_API bool IsStreamingStatePending () const
 
ENGINE_API ULevelStreamingCreateInstance (const FString &UniqueInstanceName)
 
ENGINE_API ALevelScriptActorGetLevelScriptActor ()
 
ENGINE_API bool IsValidStreamingLevel () const
 
ENGINE_API EStreamingStatus GetLevelStreamingStatus () const
 
- Public Member Functions inherited from UObject
COREUOBJECT_API UObject ()
 
COREUOBJECT_API UObject (const FObjectInitializer &ObjectInitializer)
 
COREUOBJECT_API UObject (EStaticConstructor, EObjectFlags InFlags)
 
COREUOBJECT_API UObject (FVTableHelper &Helper)
 
COREUOBJECT_API UObjectCreateDefaultSubobject (FName SubobjectFName, UClass *ReturnType, UClass *ClassToCreateByDefault, bool bIsRequired, bool bIsTransient)
 
template<class TReturnType >
TReturnTypeCreateEditorOnlyDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType >
TReturnTypeCreateDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType , class TClassToConstructByDefault >
TReturnTypeCreateDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType >
TReturnTypeCreateOptionalDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType , class TClassToConstructByDefault >
TReturnTypeCreateOptionalDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
COREUOBJECT_API void GetDefaultSubobjects (TArray< UObject * > &OutDefaultSubobjects)
 
COREUOBJECT_API UObjectGetDefaultSubobjectByName (FName ToFind)
 
virtual COREUOBJECT_API void PostInitProperties ()
 
virtual COREUOBJECT_API void PostReinitProperties ()
 
virtual void PostCDOContruct ()
 
virtual COREUOBJECT_API void PreSaveRoot (FObjectPreSaveRootContext ObjectSaveContext)
 
virtual COREUOBJECT_API void PostSaveRoot (FObjectPostSaveRootContext ObjectSaveContext)
 
virtual COREUOBJECT_API void PreSave (FObjectPreSaveContext SaveContext)
 
virtual COREUOBJECT_API void CollectSaveOverrides (FObjectCollectSaveOverridesContext SaveContext)
 
UE_FORCEINLINE_HINT bool Modify (bool bAlwaysMarkDirty=true)
 
UE_FORCEINLINE_HINT bool IsCapturingAsRootObjectForTransaction () const
 
virtual bool ResolveSubobject (const TCHAR *SubObjectPath, UObject *&OutObject, bool bLoadIfExists)
 
virtual bool IsReadyForAsyncPostLoad () const
 
virtual COREUOBJECT_API void PostLoadSubobjects (FObjectInstancingGraph *OuterInstanceGraph)
 
virtual COREUOBJECT_API void BeginDestroy ()
 
virtual bool IsReadyForFinishDestroy ()
 
virtual COREUOBJECT_API void FinishDestroy ()
 
virtual COREUOBJECT_API void Serialize (FStructuredArchive::FRecord Record)
 
virtual void ShutdownAfterError ()
 
virtual void PostInterpChange (FProperty *PropertyThatChanged)
 
virtual COREUOBJECT_API void PostRename (UObject *OldOuter, const FName OldName)
 
virtual void PreDuplicate (FObjectDuplicationParameters &DupParams)
 
virtual void PostDuplicate (bool bDuplicateForPIE)
 
virtual void PostDuplicate (EDuplicateMode::Type DuplicateMode)
 
virtual COREUOBJECT_API bool NeedsLoadForClient () const
 
virtual COREUOBJECT_API bool NeedsLoadForServer () const
 
virtual COREUOBJECT_API bool NeedsLoadForTargetPlatform (const class ITargetPlatform *TargetPlatform) const
 
virtual bool NeedsLoadForEditorGame () const
 
virtual bool IsEditorOnly () const
 
virtual bool HasNonEditorOnlyReferences () const
 
virtual bool IsPostLoadThreadSafe () const
 
virtual COREUOBJECT_API bool IsDestructionThreadSafe () const
 
virtual COREUOBJECT_API void GetPreloadDependencies (TArray< UObject * > &OutDeps)
 
virtual void GetPrestreamPackages (TArray< UObject * > &OutPrestream)
 
virtual void ExportCustomProperties (FOutputDevice &Out, uint32 Indent)
 
virtual void ImportCustomProperties (const TCHAR *SourceText, FFeedbackContext *Warn)
 
virtual void PostEditImport ()
 
virtual void PostReloadConfig (class FProperty *PropertyThatWasLoaded)
 
virtual COREUOBJECT_API bool Rename (const TCHAR *NewName=nullptr, UObject *NewOuter=nullptr, ERenameFlags Flags=REN_None)
 
virtual FString GetDesc ()
 
COREUOBJECT_API UScriptStructGetSparseClassDataStruct () const
 
virtual bool GetNativePropertyValues (TMap< FString, FString > &out_PropertyValues, uint32 ExportFlags=0) const
 
virtual COREUOBJECT_API void GetResourceSizeEx (FResourceSizeEx &CumulativeResourceSize)
 
SIZE_T GetResourceSizeBytes (EResourceSizeMode::Type Mode)
 
virtual FName GetExporterName (void)
 
COREUOBJECT_API void CallAddReferencedObjects (FReferenceCollector &Collector)
 
virtual FRestoreForUObjectOverwriteGetRestoreForUObjectOverwrite ()
 
virtual bool AreNativePropertiesIdenticalTo (UObject *Other) const
 
virtual COREUOBJECT_API void GetAssetRegistryTags (FAssetRegistryTagsContext Context) const
 
virtual COREUOBJECT_API void GetAssetRegistryTags (TArray< FAssetRegistryTag > &OutTags) const
 
COREUOBJECT_API void GetAssetRegistryTags (FAssetData &Out) const
 
COREUOBJECT_API void GetAssetRegistryTags (FAssetRegistryTagsContext Context, FAssetData &Out) const
 
virtual COREUOBJECT_API bool IsAsset () const
 
virtual COREUOBJECT_API FPrimaryAssetId GetPrimaryAssetId () const
 
virtual COREUOBJECT_API bool IsLocalizedResource () const
 
virtual COREUOBJECT_API bool IsSafeForRootSet () const
 
virtual COREUOBJECT_API void TagSubobjects (EObjectFlags NewFlags)
 
virtual COREUOBJECT_API void GetLifetimeReplicatedProps (TArray< class FLifetimeProperty > &OutLifetimeProps) const
 
virtual COREUOBJECT_API void GetReplicatedCustomConditionState (FCustomPropertyConditionState &OutActiveState) const
 
virtual COREUOBJECT_API void RegisterReplicationFragments (UE::Net::FFragmentRegistrationContext &Context, UE::Net::EFragmentRegistrationFlags RegistrationFlags)
 
virtual COREUOBJECT_API bool IsNameStableForNetworking () const
 
virtual COREUOBJECT_API bool IsFullNameStableForNetworking () const
 
virtual COREUOBJECT_API bool IsSupportedForNetworking () const
 
virtual void GetSubobjectsWithStableNamesForNetworking (TArray< UObject * > &ObjList)
 
virtual COREUOBJECT_API void PreNetReceive ()
 
virtual COREUOBJECT_API void PostNetReceive ()
 
virtual void PostRepNotifies ()
 
virtual COREUOBJECT_API void PreDestroyFromReplication ()
 
COREUOBJECT_API bool IsSelected () const
 
COREUOBJECT_API void SerializeScriptProperties (FArchive &Ar) const
 
COREUOBJECT_API void SerializeScriptProperties (FStructuredArchive::FSlot Slot) const
 
COREUOBJECT_API void ReinitializeProperties (UObject *SourceObject=NULL, struct FObjectInstancingGraph *InstanceGraph=NULL)
 
COREUOBJECT_API FString GetDetailedInfo () const
 
COREUOBJECT_API bool ConditionalBeginDestroy ()
 
COREUOBJECT_API bool ConditionalFinishDestroy ()
 
COREUOBJECT_API void ConditionalPostLoad ()
 
COREUOBJECT_API void ConditionalPreload ()
 
COREUOBJECT_API void ConditionalPostLoadSubobjects (struct FObjectInstancingGraph *OuterInstanceGraph=NULL)
 
bool IsBasedOnArchetype (const UObject *const SomeObject) const
 
COREUOBJECT_API UFunctionFindFunction (FName InName) const
 
COREUOBJECT_API UFunctionFindFunctionChecked (FName InName) const
 
virtual COREUOBJECT_API void BuildSubobjectMapping (UObject *OtherObject, TMap< UObject *, UObject * > &ObjectMapping) const
 
COREUOBJECT_API void CollectDefaultSubobjects (TArray< UObject * > &OutDefaultSubobjects, bool bIncludeNestedSubobjects=false) const
 
COREUOBJECT_API bool CheckDefaultSubobjects (bool bForceCheck=false) const
 
COREUOBJECT_API void SaveConfig (uint64 RequiredPropertyFlags=CPF_Config, const TCHAR *Filename=nullptr, FConfigCacheIni *Config=GConfig, bool bAllowCopyToDefaultObject=true)
 
COREUOBJECT_API void SaveConfig (const FSaveConfigContext &Context)
 
COREUOBJECT_API void UpdateDefaultConfigFile (const FString &SpecificFileLocation="")
 
COREUOBJECT_API bool TryUpdateDefaultConfigFile (const FString &SpecificFileLocation="", bool bWarnIfFail=true)
 
COREUOBJECT_API void UpdateGlobalUserConfigFile ()
 
COREUOBJECT_API void UpdateProjectUserConfigFile ()
 
COREUOBJECT_API void UpdateSinglePropertyInConfigFile (const FProperty *InProperty, const FString &InConfigIniName)
 
COREUOBJECT_API FString GetDefaultConfigFilename () const
 
COREUOBJECT_API FString GetGlobalUserConfigFilename () const
 
COREUOBJECT_API FString GetProjectUserConfigFilename () const
 
virtual const TCHARGetConfigOverridePlatform () const
 
virtual void OverrideConfigSection (FString &SectionName)
 
virtual void OverridePerObjectConfigSection (FString &SectionName)
 
COREUOBJECT_API void LoadConfig (UClass *ConfigClass=nullptr, const TCHAR *Filename=nullptr, uint32 PropagationFlags=UE::LCPF_None, class FProperty *PropertyToLoad=nullptr, TArray< UE::ConfigAccessTracking::FConfigAccessData > *OutAccessedKeys=nullptr)
 
COREUOBJECT_API void ReloadConfig (UClass *ConfigClass=NULL, const TCHAR *Filename=NULL, uint32 PropagationFlags=UE::LCPF_None, class FProperty *PropertyToLoad=NULL)
 
COREUOBJECT_API void ParseParms (const TCHAR *Parms)
 
COREUOBJECT_API void OutputReferencers (FOutputDevice &Ar, FReferencerInformationList *Referencers=NULL)
 
COREUOBJECT_API void RetrieveReferencers (TArray< FReferencerInformation > *OutInternalReferencers, TArray< FReferencerInformation > *OutExternalReferencers)
 
COREUOBJECT_API void SetLinker (FLinkerLoad *LinkerLoad, int32 LinkerIndex, bool bShouldDetachExisting=true, bool bSilenceLogs=false)
 
COREUOBJECT_API UObjectGetArchetype () const
 
COREUOBJECT_API void GetArchetypeInstances (TArray< UObject * > &Instances)
 
COREUOBJECT_API void InstanceSubobjectTemplates (struct FObjectInstancingGraph *InstanceGraph=NULL)
 
template<class T >
bool Implements () const
 
virtual COREUOBJECT_API void ProcessEvent (UFunction *Function, void *Parms)
 
virtual int32 GetFunctionCallspace (UFunction *Function, FFrame *Stack)
 
virtual bool CallRemoteFunction (UFunction *Function, void *Parms, struct FOutParmRec *OutParms, FFrame *Stack)
 
COREUOBJECT_API bool CallFunctionByNameWithArguments (const TCHAR *Cmd, FOutputDevice &Ar, UObject *Executor, bool bForceCallWithNonExec=false)
 
COREUOBJECT_API void CallFunction (FFrame &Stack, RESULT_DECL, UFunction *Function)
 
 DECLARE_FUNCTION (ProcessInternal)
 
virtual bool ProcessConsoleExec (const TCHAR *Cmd, FOutputDevice &Ar, UObject *Executor)
 
COREUOBJECT_API void SkipFunction (FFrame &Stack, RESULT_DECL, UFunction *Function)
 
virtual UClassRegenerateClass (UClass *ClassToRegenerate, UObject *PreviousCDO)
 
COREUOBJECT_API bool IsInBlueprint () const
 
COREUOBJECT_API void DestroyNonNativeProperties ()
 
virtual void MarkAsEditorOnlySubobject ()
 
COREUOBJECT_API void AbortInsideMemberFunction () const
 
 DECLARE_FUNCTION (execUndefined)
 
 DECLARE_FUNCTION (execLocalVariable)
 
 DECLARE_FUNCTION (execInstanceVariable)
 
 DECLARE_FUNCTION (execDefaultVariable)
 
 DECLARE_FUNCTION (execLocalOutVariable)
 
 DECLARE_FUNCTION (execInterfaceVariable)
 
 DECLARE_FUNCTION (execClassSparseDataVariable)
 
 DECLARE_FUNCTION (execInterfaceContext)
 
 DECLARE_FUNCTION (execArrayElement)
 
 DECLARE_FUNCTION (execBoolVariable)
 
 DECLARE_FUNCTION (execClassDefaultVariable)
 
 DECLARE_FUNCTION (execEndFunctionParms)
 
 DECLARE_FUNCTION (execNothing)
 
 DECLARE_FUNCTION (execNothingInt32)
 
 DECLARE_FUNCTION (execNothingOp4a)
 
 DECLARE_FUNCTION (execBreakpoint)
 
 DECLARE_FUNCTION (execTracepoint)
 
 DECLARE_FUNCTION (execWireTracepoint)
 
 DECLARE_FUNCTION (execInstrumentation)
 
 DECLARE_FUNCTION (execEndOfScript)
 
 DECLARE_FUNCTION (execReturnNothing)
 
 DECLARE_FUNCTION (execEmptyParmValue)
 
 DECLARE_FUNCTION (execJump)
 
 DECLARE_FUNCTION (execJumpIfNot)
 
 DECLARE_FUNCTION (execAssert)
 
 DECLARE_FUNCTION (execPushExecutionFlow)
 
 DECLARE_FUNCTION (execPopExecutionFlow)
 
 DECLARE_FUNCTION (execComputedJump)
 
 DECLARE_FUNCTION (execPopExecutionFlowIfNot)
 
 DECLARE_FUNCTION (execLet)
 
 DECLARE_FUNCTION (execLetObj)
 
 DECLARE_FUNCTION (execLetWeakObjPtr)
 
 DECLARE_FUNCTION (execLetBool)
 
 DECLARE_FUNCTION (execLetDelegate)
 
 DECLARE_FUNCTION (execLetMulticastDelegate)
 
 DECLARE_FUNCTION (execAddMulticastDelegate)
 
 DECLARE_FUNCTION (execClearMulticastDelegate)
 
 DECLARE_FUNCTION (execEatReturnValue)
 
 DECLARE_FUNCTION (execRemoveMulticastDelegate)
 
 DECLARE_FUNCTION (execSelf)
 
 DECLARE_FUNCTION (execContext)
 
 DECLARE_FUNCTION (execContext_FailSilent)
 
 DECLARE_FUNCTION (execStructMemberContext)
 
 DECLARE_FUNCTION (execVirtualFunction)
 
 DECLARE_FUNCTION (execFinalFunction)
 
 DECLARE_FUNCTION (execLocalVirtualFunction)
 
 DECLARE_FUNCTION (execLocalFinalFunction)
 
 DECLARE_FUNCTION (execStructCmpEq)
 
 DECLARE_FUNCTION (execStructCmpNe)
 
 DECLARE_FUNCTION (execStructMember)
 
 DECLARE_FUNCTION (execEqualEqual_DelegateDelegate)
 
 DECLARE_FUNCTION (execNotEqual_DelegateDelegate)
 
 DECLARE_FUNCTION (execEqualEqual_DelegateFunction)
 
 DECLARE_FUNCTION (execNotEqual_DelegateFunction)
 
 DECLARE_FUNCTION (execIntConst)
 
 DECLARE_FUNCTION (execInt64Const)
 
 DECLARE_FUNCTION (execUInt64Const)
 
 DECLARE_FUNCTION (execSkipOffsetConst)
 
 DECLARE_FUNCTION (execFloatConst)
 
 DECLARE_FUNCTION (execDoubleConst)
 
 DECLARE_FUNCTION (execStringConst)
 
 DECLARE_FUNCTION (execUnicodeStringConst)
 
 DECLARE_FUNCTION (execTextConst)
 
 DECLARE_FUNCTION (execPropertyConst)
 
 DECLARE_FUNCTION (execObjectConst)
 
 DECLARE_FUNCTION (execSoftObjectConst)
 
 DECLARE_FUNCTION (execFieldPathConst)
 
 DECLARE_FUNCTION (execInstanceDelegate)
 
 DECLARE_FUNCTION (execNameConst)
 
 DECLARE_FUNCTION (execByteConst)
 
 DECLARE_FUNCTION (execIntZero)
 
 DECLARE_FUNCTION (execIntOne)
 
 DECLARE_FUNCTION (execTrue)
 
 DECLARE_FUNCTION (execFalse)
 
 DECLARE_FUNCTION (execNoObject)
 
 DECLARE_FUNCTION (execNullInterface)
 
 DECLARE_FUNCTION (execIntConstByte)
 
 DECLARE_FUNCTION (execRotationConst)
 
 DECLARE_FUNCTION (execVectorConst)
 
 DECLARE_FUNCTION (execVector3fConst)
 
 DECLARE_FUNCTION (execTransformConst)
 
 DECLARE_FUNCTION (execStructConst)
 
 DECLARE_FUNCTION (execSetArray)
 
 DECLARE_FUNCTION (execSetSet)
 
 DECLARE_FUNCTION (execSetMap)
 
 DECLARE_FUNCTION (execArrayConst)
 
 DECLARE_FUNCTION (execSetConst)
 
 DECLARE_FUNCTION (execMapConst)
 
 DECLARE_FUNCTION (execBitFieldConst)
 
 DECLARE_FUNCTION (execNew)
 
 DECLARE_FUNCTION (execClassContext)
 
 DECLARE_FUNCTION (execNativeParm)
 
 DECLARE_FUNCTION (execCast)
 
 DECLARE_FUNCTION (execDynamicCast)
 
 DECLARE_FUNCTION (execMetaCast)
 
 DECLARE_FUNCTION (execInterfaceCast)
 
 DECLARE_FUNCTION (execDoubleToFloatCast)
 
 DECLARE_FUNCTION (execFloatToDoubleCast)
 
 DECLARE_FUNCTION (execObjectToBool)
 
 DECLARE_FUNCTION (execInterfaceToBool)
 
 DECLARE_FUNCTION (execObjectToInterface)
 
 DECLARE_FUNCTION (execInterfaceToInterface)
 
 DECLARE_FUNCTION (execInterfaceToObject)
 
 DECLARE_FUNCTION (execGetDynArrayElement)
 
 DECLARE_FUNCTION (execSetDynArrayElement)
 
 DECLARE_FUNCTION (execGetDynArrayLength)
 
 DECLARE_FUNCTION (execSetDynArrayLength)
 
 DECLARE_FUNCTION (execDynArrayInsert)
 
 DECLARE_FUNCTION (execDynArrayRemove)
 
 DECLARE_FUNCTION (execDynArrayFind)
 
 DECLARE_FUNCTION (execDynArrayFindStruct)
 
 DECLARE_FUNCTION (execDynArrayAdd)
 
 DECLARE_FUNCTION (execDynArrayAddItem)
 
 DECLARE_FUNCTION (execDynArrayInsertItem)
 
 DECLARE_FUNCTION (execDynArrayRemoveItem)
 
 DECLARE_FUNCTION (execDynArraySort)
 
 DECLARE_FUNCTION (execBindDelegate)
 
 DECLARE_FUNCTION (execCallMulticastDelegate)
 
 DECLARE_FUNCTION (execLetValueOnPersistentFrame)
 
 DECLARE_FUNCTION (execCallMathFunction)
 
 DECLARE_FUNCTION (execSwitchValue)
 
 DECLARE_FUNCTION (execArrayGetByRef)
 
 DECLARE_FUNCTION (execAutoRtfmTransact)
 
 DECLARE_FUNCTION (execAutoRtfmStopTransact)
 
 DECLARE_FUNCTION (execAutoRtfmAbortIfNot)
 
void ExecuteUbergraph (int32 EntryPoint)
 
virtual void ValidateGeneratedRepEnums (const TArray< struct FRepRecord > &ClassReps) const
 
virtual uint64 GetNetPushIdDynamic () const
 
- Public Member Functions inherited from UObjectBaseUtility
 UObjectBaseUtility ()
 
 UObjectBaseUtility (EObjectFlags InFlags)
 
void SetFlags (EObjectFlags NewFlags)
 
void ClearFlags (EObjectFlags FlagsToClear)
 
bool HasAnyFlags (EObjectFlags FlagsToCheck) const
 
bool HasAllFlags (EObjectFlags FlagsToCheck) const
 
UE_FORCEINLINE_HINT EObjectFlags GetMaskedFlags (EObjectFlags Mask=RF_AllFlags) const
 
UE_FORCEINLINE_HINT void Mark (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT void UnMark (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT bool HasAnyMarks (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT bool HasAllMarks (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT EObjectMark GetAllMarks () const
 
void MarkAsGarbage ()
 
void ClearGarbage ()
 
UE_FORCEINLINE_HINT void AddToRoot ()
 
UE_FORCEINLINE_HINT void RemoveFromRoot ()
 
UE_FORCEINLINE_HINT bool IsRooted () const
 
UE_FORCEINLINE_HINT int32 GetRefCount () const
 
bool ThisThreadAtomicallyClearedRFUnreachable ()
 
UE_FORCEINLINE_HINT bool IsUnreachable () const
 
UE_FORCEINLINE_HINT bool IsNative () const
 
void SetInternalFlags (EInternalObjectFlags FlagsToSet) const
 
UE_FORCEINLINE_HINT EInternalObjectFlags GetInternalFlags () const
 
UE_FORCEINLINE_HINT bool HasAnyInternalFlags (EInternalObjectFlags FlagsToCheck) const
 
void ClearInternalFlags (EInternalObjectFlags FlagsToClear) const
 
bool AtomicallyClearInternalFlags (EInternalObjectFlags FlagsToClear) const
 
COREUOBJECT_API FString GetFullName (const UObject *StopOuter=NULL, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API void GetFullName (const UObject *StopOuter, FString &ResultString, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API void GetFullName (FStringBuilderBase &ResultString, const UObject *StopOuter=NULL, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API FString GetPathName (const UObject *StopOuter=NULL) const
 
COREUOBJECT_API void GetPathName (const UObject *StopOuter, FString &ResultString) const
 
COREUOBJECT_API void GetPathName (const UObject *StopOuter, FStringBuilderBase &ResultString) const
 
virtual bool CanBeClusterRoot () const
 
virtual COREUOBJECT_API bool CanBeInCluster () const
 
virtual COREUOBJECT_API void CreateCluster ()
 
virtual void OnClusterMarkedAsPendingKill ()
 
COREUOBJECT_API void AddToCluster (UObjectBaseUtility *ClusterRootOrObjectFromCluster, bool bAddAsMutableObject=false)
 
COREUOBJECT_API FString GetFullGroupName (bool bStartWithOuter) const
 
UE_FORCEINLINE_HINT FString GetName () const
 
UE_FORCEINLINE_HINT void GetName (FString &ResultString) const
 
UE_FORCEINLINE_HINT void AppendName (FString &ResultString) const
 
COREUOBJECT_API bool IsPackageExternal () const
 
COREUOBJECT_API void DetachExternalPackage ()
 
COREUOBJECT_API void ReattachExternalPackage ()
 
COREUOBJECT_API UObjectGetOutermostObject () const
 
COREUOBJECT_API UPackageGetPackage () const
 
UE_INTERNAL virtual COREUOBJECT_API UE::Core::FVersePath GetVersePath () const
 
COREUOBJECT_API UPackageGetOutermost () const
 
COREUOBJECT_API bool MarkPackageDirty () const
 
COREUOBJECT_API bool IsTemplate (EObjectFlags TemplateTypes=RF_ArchetypeObject|RF_ClassDefaultObject) const
 
COREUOBJECT_API UObjectGetTypedOuter (UClass *Target) const
 
template<typename T >
T * GetTypedOuter () const
 
template<typename InterfaceClassType >
InterfaceClassTypeGetImplementingOuter () const
 
COREUOBJECT_API UObjectBaseUtilityGetImplementingOuterObject (const UClass *InInterfaceClass) const
 
COREUOBJECT_API bool IsIn (const UObject *SomeOuter) const
 
COREUOBJECT_API bool IsIn (const UPackage *SomePackage) const
 
COREUOBJECT_API bool IsInOuter (const UObject *SomeOuter) const
 
COREUOBJECT_API bool IsInPackage (const UPackage *SomePackage) const
 
COREUOBJECT_API bool IsInA (const UClass *SomeBaseClass) const
 
COREUOBJECT_API bool RootPackageHasAnyFlags (uint32 CheckFlagMask) const
 
template<typename OtherClassType >
bool IsA (OtherClassType SomeBase) const
 
template<class T >
bool IsA () const
 
COREUOBJECT_API const UClassFindNearestCommonBaseClass (const UClass *TestClass) const
 
COREUOBJECT_API voidGetInterfaceAddress (UClass *InterfaceClass)
 
COREUOBJECT_API voidGetNativeInterfaceAddress (UClass *InterfaceClass)
 
const voidGetNativeInterfaceAddress (UClass *InterfaceClass) const
 
COREUOBJECT_API bool IsTemplateForSubobjects (EObjectFlags TemplateTypes=RF_ClassDefaultObject|RF_DefaultSubObject|RF_InheritableComponentTemplate) const
 
COREUOBJECT_API bool IsDefaultSubobject () const
 
COREUOBJECT_API class FLinkerLoadGetLinker () const
 
COREUOBJECT_API int32 GetLinkerIndex () const
 
COREUOBJECT_API FPackageFileVersion GetLinkerUEVersion () const
 
int32 GetLinkerUE4Version () const
 
COREUOBJECT_API int32 GetLinkerLicenseeUEVersion () const
 
int32 GetLinkerLicenseeUE4Version () const
 
COREUOBJECT_API int32 GetLinkerCustomVersion (FGuid CustomVersionKey) const
 
UE_FORCEINLINE_HINT bool operator< (const UObjectBaseUtility &Other) const
 
TStatId GetStatID (bool bForDeferredUse=false) const
 
- Public Member Functions inherited from UObjectBase
COREUOBJECT_API UObjectBase (UClass *InClass, EObjectFlags InFlags, EInternalObjectFlags InInternalFlags, UObject *InOuter, FName InName, int32 InInternalIndex=-1, int32 InSerialNumber=0, FRemoteObjectId InRemoteId=FRemoteObjectId())
 
virtual COREUOBJECT_API ~UObjectBase ()
 
COREUOBJECT_API bool IsValidLowLevel () const
 
COREUOBJECT_API bool IsValidLowLevelFast (bool bRecursive=true) const
 
FORCEINLINE uint32 GetUniqueID () const
 
FORCEINLINE UClassGetClass () const
 
FORCEINLINE UObjectGetOuter () const
 
FORCEINLINE FName GetFName () const
 
virtual COREUOBJECT_API FName GetFNameForStatID () const
 
COREUOBJECT_API UPackageGetExternalPackage () const
 
COREUOBJECT_API void SetExternalPackage (UPackage *InPackage)
 
COREUOBJECT_API UPackageGetExternalPackageInternal () const
 
COREUOBJECT_API void MarkAsReachable () const
 
COREUOBJECT_API void AddRef () const
 
COREUOBJECT_API void ReleaseRef () const
 
FORCEINLINE EObjectFlags GetFlags () const
 
FORCENOINLINE void AtomicallySetFlags (EObjectFlags FlagsToAdd)
 
FORCENOINLINE void AtomicallyClearFlags (EObjectFlags FlagsToClear)
 

Static Public Member Functions

static ENGINE_API FColor GetLevelStreamingStatusColor (EStreamingStatus Status)
 
static ENGINE_API const TCHARGetLevelStreamingStatusDisplayName (EStreamingStatus Status)
 
static ENGINE_API void DebugDrawLegend (const UWorld *World, class UCanvas *Canvas, const FVector2D &Offset)
 
static ENGINE_API bool DefaultAllowClientUseMakingInvisibleTransactionRequests ()
 
static ENGINE_API bool DefaultAllowClientUseMakingVisibleTransactionRequests ()
 
static ENGINE_API bool ShouldServerUseMakingVisibleTransactionRequest ()
 
static ENGINE_API bool ShouldReuseUnloadedButStillAroundLevels (const ULevel *InLevel)
 
static ENGINE_API bool AllowIncrementalRemovalWhilePendingVisibility ()
 
static ENGINE_API void BroadcastLevelLoadedStatus (UWorld *PersistentWorld, FName LevelPackageName, bool bLoaded)
 
static ENGINE_API void BroadcastLevelVisibleStatus (UWorld *PersistentWorld, FName LevelPackageName, bool bVisible)
 
- Static Public Member Functions inherited from UObject
static COREUOBJECT_API void UpdateClassesExcludedFromDedicatedServer (const TArray< FString > &InClassNames, const TArray< FString > &InModulesNames)
 
static COREUOBJECT_API void UpdateClassesExcludedFromDedicatedClient (const TArray< FString > &InClassNames, const TArray< FString > &InModulesNames)
 
static COREUOBJECT_API bool CanCreateInCurrentContext (UObject *Template)
 
static COREUOBJECT_API void AddReferencedObjects (UObject *InThis, FReferenceCollector &Collector)
 
static COREUOBJECT_API const FNameSourceFileTagName ()
 
static COREUOBJECT_API UObjectGetArchetypeFromRequiredInfo (const UClass *Class, const UObject *Outer, FName Name, EObjectFlags ObjectFlags)
 
- Static Public Member Functions inherited from UObjectBaseUtility
static bool IsGarbageEliminationEnabled ()
 
static bool IsPendingKillEnabled ()
 
static void SetGarbageEliminationEnabled (bool bEnabled)
 
static COREUOBJECT_API void ReloadObjectsFromModifiedConfigSections (const class FConfigModificationTracker *ChangeTracker)
 
- Static Public Member Functions inherited from UObjectBase
static COREUOBJECT_API FString RemoveClassPrefix (const TCHAR *ClassName)
 
static void PrefetchClass (UObject *Object)
 
static void PrefetchOuter (UObject *Object)
 

Public Attributes

FName PackageNameToLoad
 
TArray< FNameLODPackageNames
 
TArray< FNameLODPackageNamesToLoad
 
FTransform LevelTransform
 
bool bClientOnlyVisible
 
uint8 bLocked:1
 
uint8 bIsStatic:1
 
uint8 bShouldBlockOnLoad:1
 
uint8 bShouldBlockOnUnload:1
 
uint8 bDisableDistanceStreaming:1
 
uint8 bDrawOnLevelStatusMap: 1
 
uint8 bGarbageCollectionClusteringEnabled: 1
 
FLinearColor LevelColor
 
TArray< TObjectPtr< ALevelStreamingVolume > > EditorStreamingVolumes
 
float MinTimeBetweenVolumeUnloadRequests
 
float LastVolumeUnloadRequestTime
 
FLevelStreamingLoadedStatus OnLevelLoaded
 
FLevelStreamingLoadedStatus OnLevelUnloaded
 
FLevelStreamingVisibilityStatus OnLevelShown
 
FLevelStreamingVisibilityStatus OnLevelHidden
 

Protected Member Functions

ENGINE_API void SetCurrentState (ELevelStreamingState NewState)
 
virtual ENGINE_API bool RequestVisibilityChange (bool bVisible)
 
ENGINE_API bool CanMakeVisible ()
 
ENGINE_API bool CanMakeInvisible ()
 
virtual ENGINE_API bool RequestLevel (UWorld *PersistentWorld, bool bAllowLevelLoadRequests, EReqLevelBlock BlockPolicy)
 
ENGINE_API void PrepareLoadedLevel (ULevel *InLevel, UPackage *InLevelPackage, int32 InPIEInstanceID)
 
virtual ENGINE_API void SetLoadedLevel (ULevel *Level)
 
virtual void OnLevelLoadedChanged (ULevel *Level)
 
virtual void OnCurrentStateChanged (ELevelStreamingState OldState, ELevelStreamingState NewState)
 
bool ValidateUniqueWorldAsset (UWorld *PersistentWorld)
 
ENGINE_API void OnLoadingStarted ()
 
ENGINE_API void OnLoadingFinished ()
 
ENGINE_API FName GetLoadedLevelPackageName () const
 
- Protected Member Functions inherited from UObject
virtual FString GetDetailedInfoInternal () const
 
COREUOBJECT_API bool CanCheckDefaultSubObjects (bool bForceCheck, bool &bResult) const
 
virtual COREUOBJECT_API bool CheckDefaultSubobjectsInternal () const
 
- Protected Member Functions inherited from UObjectBase
 UObjectBase ()
 
COREUOBJECT_API UObjectBase (EObjectFlags InFlags)
 
COREUOBJECT_API void LowLevelRename (FName NewName, UObject *NewOuter=NULL)
 
virtual void RegisterDependencies ()
 
COREUOBJECT_API void Register (class UClass *(*StaticClassFn)(), const TCHAR *PackageName, const TCHAR *Name)
 
COREUOBJECT_API void Register (const TCHAR *PackageName, const TCHAR *Name)
 
virtual COREUOBJECT_API void DeferredRegister (UClass *UClassStaticClass, const TCHAR *PackageName, const TCHAR *Name)
 
FORCEINLINE void SetFlagsTo (EObjectFlags NewFlags)
 

Protected Attributes

TSoftObjectPtr< UWorldWorldAsset
 
int32 StreamingPriority
 
uint8 bShouldBeLoaded:1
 
uint8 bSkipClientUseMakingInvisibleTransactionRequest:1
 
uint8 bSkipClientUseMakingVisibleTransactionRequest:1
 
FPackagePath LastAsyncLoadPackagePath
 
TArray< int32AsyncRequestIDs
 
TObjectPtr< class ULevelLoadedLevel
 
TObjectPtr< class ULevelPendingUnloadLevel
 

Friends

struct FAckNetVisibilityTransaction
 
struct FStreamingLevelPrivateAccessor
 
bool operator== (ELevelStreamingState A, ECurrentState B)
 
bool operator== (ECurrentState A, ELevelStreamingState B)
 
bool operator!= (ELevelStreamingState A, ECurrentState B)
 
bool operator!= (ECurrentState A, ELevelStreamingState B)
 

Detailed Description

Abstract base class of container object encapsulating data required for streaming and providing interface for when a level should be streamed in and out of memory.

Member Enumeration Documentation

◆ EReqLevelBlock

Enumerator
BlockAlwaysLoadedLevelsOnly 

Block load AlwaysLoaded levels. Otherwise Async load.

AlwaysBlock 

Block all loads

NeverBlock 

Never block loads

Member Function Documentation

◆ AllowIncrementalRemovalWhilePendingVisibility()

bool ULevelStreaming::AllowIncrementalRemovalWhilePendingVisibility ( )
static

Whether incremental removal of a streaming level can be done while there's a pending visible streaming level being processed.

◆ BeginClientNetVisibilityRequest()

void ULevelStreaming::BeginClientNetVisibilityRequest ( bool  bInShouldBeVisible)

Begin a client instigated NetVisibility request

◆ BroadcastLevelLoadedStatus()

void ULevelStreaming::BroadcastLevelLoadedStatus ( UWorld PersistentWorld,
FName  LevelPackageName,
bool  bLoaded 
)
static

Traverses all streaming level objects in the persistent world and in all inner worlds and calls appropriate delegate for streaming objects that refer specified level

Parameters
PersistentWorldWorld to traverse
LevelPackageNameLevel which loaded status was changed
bLoadedWhether level was loaded or unloaded

◆ BroadcastLevelVisibleStatus()

void ULevelStreaming::BroadcastLevelVisibleStatus ( UWorld PersistentWorld,
FName  LevelPackageName,
bool  bVisible 
)
static

Traverses all streaming level objects in the persistent world and in all inner worlds and calls appropriate delegate for streaming objects that refer specified level

Parameters
PersistentWorldWorld to traverse
LevelPackageNameLevel which visibility status was changed
bVisibleWhether level become visible or not

◆ CanMakeInvisible()

bool ULevelStreaming::CanMakeInvisible ( )
protected

Returns whether the streaming level can make invisible (can call RemoveFromWorld).

◆ CanMakeVisible()

bool ULevelStreaming::CanMakeVisible ( )
protected

Returns whether the streaming level can make visible (can call AddToWorld).

◆ CanReplicateStreamingStatus()

virtual bool ULevelStreaming::CanReplicateStreamingStatus ( ) const
inlinevirtual

Returns whether level status can be replicated from the server to the client

◆ ClearLoadedLevel()

void ULevelStreaming::ClearLoadedLevel ( )
inline

Sets the LoadedLevel value to NULL

◆ CreateInstance()

ULevelStreaming * ULevelStreaming::CreateInstance ( const FString &  UniqueInstanceName)

Creates a new instance of this streaming level with a provided unique instance name

◆ DebugDrawLegend()

static ENGINE_API void ULevelStreaming::DebugDrawLegend ( const UWorld World,
class UCanvas Canvas,
const FVector2D Offset 
)
static

Utility that draws a legend of level streaming status

◆ DefaultAllowClientUseMakingInvisibleTransactionRequests()

bool ULevelStreaming::DefaultAllowClientUseMakingInvisibleTransactionRequests ( )
static

Whether client should be using making invisible transaction requests to the server (default value).

◆ DefaultAllowClientUseMakingVisibleTransactionRequests()

bool ULevelStreaming::DefaultAllowClientUseMakingVisibleTransactionRequests ( )
static

Whether client should be using making visible transaction requests to the server (default value).

◆ GetAsyncRequestIDs()

const TArray< int32 > & ULevelStreaming::GetAsyncRequestIDs ( ) const
inline

Returns the RequestIDs for the async load requests required to load the level. These IDs are cleared during OnLoadingFinished

◆ GetCurrentState()

PRAGMA_DISABLE_DEPRECATION_WARNINGS ECurrentState ULevelStreaming::GetCurrentState ( ) const
inline

Returns the current loaded/visible state of the streaming level.

◆ GetIsRequestingUnloadAndRemoval()

bool ULevelStreaming::GetIsRequestingUnloadAndRemoval ( ) const
inline

Returns if the streaming level has requested to be unloaded and removed.

◆ GetLevelLODIndex()

int32 ULevelStreaming::GetLevelLODIndex ( ) const
inline

Returns the world composition level LOD index.

◆ GetLevelScriptActor()

ALevelScriptActor * ULevelStreaming::GetLevelScriptActor ( )

Returns the Level Script Actor of the level if the level is loaded and valid

◆ GetLevelStreamingState()

ELevelStreamingState ULevelStreaming::GetLevelStreamingState ( ) const

◆ GetLevelStreamingStatus()

EStreamingStatus ULevelStreaming::GetLevelStreamingStatus ( ) const

Used for debugging Level's status

◆ GetLevelStreamingStatusColor()

FColor ULevelStreaming::GetLevelStreamingStatusColor ( EStreamingStatus  Status)
static

Utility that gets a color for a particular level status

◆ GetLevelStreamingStatusDisplayName()

const TCHAR * ULevelStreaming::GetLevelStreamingStatusDisplayName ( EStreamingStatus  Status)
static

Utility that returns a string for a streaming level status

◆ GetLoadedLevel()

ULevel * ULevelStreaming::GetLoadedLevel ( ) const
inline

Gets a pointer to the LoadedLevel value

◆ GetLoadedLevelPackageName()

FName ULevelStreaming::GetLoadedLevelPackageName ( ) const
protected
Returns
Name of the level package that is currently loaded.

◆ GetPriority()

int32 ULevelStreaming::GetPriority ( ) const
inline

Sets the relative priority of considering the streaming level. Changing the priority will not interrupt the currently considered level, but will affect the next time a level is being selected for evaluation.

◆ GetShouldBeVisibleFlag()

bool ULevelStreaming::GetShouldBeVisibleFlag ( ) const
inline

Returns the value of bShouldBeVisible. Use ShouldBeVisible to query whether a streaming level should be visible based on its own criteria.

◆ GetStreamingVolumeBounds()

FBox ULevelStreaming::GetStreamingVolumeBounds ( )

Get a bounding box around the streaming volumes associated with this LevelStreaming object

◆ GetStreamingWorld()

UWorld * ULevelStreaming::GetStreamingWorld ( ) const
virtual

Returns the UWorld that triggered the streaming of this streaming level.

◆ GetWorld()

UWorld * ULevelStreaming::GetWorld ( ) const
finaloverridevirtual

◆ GetWorldAsset()

const TSoftObjectPtr< UWorld > & ULevelStreaming::GetWorldAsset ( ) const
inline

Returns a constant reference to the world asset this streaming level object references

◆ GetWorldAssetPackageFName()

FName ULevelStreaming::GetWorldAssetPackageFName ( ) const
virtual

Gets the package name for the world asset referred to by this level streaming as an FName

◆ GetWorldAssetPackageName()

FString ULevelStreaming::GetWorldAssetPackageName ( ) const

Gets the package name for the world asset referred to by this level streaming

◆ GetWorldPartitionCell()

virtual const IWorldPartitionCell * ULevelStreaming::GetWorldPartitionCell ( ) const
inlinevirtual

◆ HasLoadedLevel()

bool ULevelStreaming::HasLoadedLevel ( ) const
inline

Returns whether the streaming level has loaded a level.

◆ HasLoadRequestPending()

bool ULevelStreaming::HasLoadRequestPending ( ) const
inline

Returns whether the streaming level is in the loading state.

◆ IsLevelLoaded()

bool ULevelStreaming::IsLevelLoaded ( ) const
inline

Returns whether streaming level is loaded

◆ IsLevelVisible()

bool ULevelStreaming::IsLevelVisible ( ) const

Returns whether streaming level is visible

◆ IsStreamingStatePending()

bool ULevelStreaming::IsStreamingStatePending ( ) const

Returns whether level has streaming state change pending

◆ IsValidStreamingLevel()

bool ULevelStreaming::IsValidStreamingLevel ( ) const

Returns false if the level package associated to that streaming level is invalid.

This support packages that were or will be instanced on load. This might be redundant but it avoid changing the behavior of this function where a loaded package can still fail if it doesn't have on disk file associated to it.

◆ IsWaitingForNetVisibilityTransactionAck()

bool ULevelStreaming::IsWaitingForNetVisibilityTransactionAck ( ENetLevelVisibilityRequest  InRequestType = ENetLevelVisibilityRequest::MakingInvisible) const

Check if we are waiting for a making visible or invisible streaming transaction

◆ OnCurrentStateChanged()

virtual void ULevelStreaming::OnCurrentStateChanged ( ELevelStreamingState  OldState,
ELevelStreamingState  NewState 
)
inlineprotectedvirtual

Called when the current state changes

◆ OnLevelLoadedChanged()

virtual void ULevelStreaming::OnLevelLoadedChanged ( ULevel Level)
inlineprotectedvirtual

Called by SetLoadedLevel

Reimplemented in ULevelStreamingLevelInstance.

◆ OnLoadingFinished()

void ULevelStreaming::OnLoadingFinished ( )
protected

◆ OnLoadingStarted()

void ULevelStreaming::OnLoadingStarted ( )
protected

◆ PostLoad()

void ULevelStreaming::PostLoad ( )
overridevirtual

Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

Reimplemented from UObject.

◆ PrepareLoadedLevel()

void ULevelStreaming::PrepareLoadedLevel ( ULevel InLevel,
UPackage InLevelPackage,
int32  InPIEInstanceID 
)
protected

Sets loaded level, fixups for PIE, notifies level is loaded, apply necessary modifications on level once loaded.

◆ RenameForPIE()

void ULevelStreaming::RenameForPIE ( int  PIEInstanceID,
bool  bKeepWorldAssetName = false 
)

Rename package name to PIE appropriate name

◆ RequestLevel()

bool ULevelStreaming::RequestLevel ( UWorld PersistentWorld,
bool  bAllowLevelLoadRequests,
EReqLevelBlock  BlockPolicy 
)
protectedvirtual

Try to find loaded level in memory, issue a loading request otherwise

Parameters
PersistentWorldPersistent world
bAllowLevelLoadRequestsWhether to allow level load requests
BlockPolicyWhether loading operation should block
Returns
true if the load request was issued or a package was already loaded

◆ RequestVisibilityChange()

bool ULevelStreaming::RequestVisibilityChange ( bool  bVisible)
protectedvirtual

Prepare the transition to the new state.

Returns
true if the state change can be performed, false otherwise.

◆ ResetPriorityOverride()

void ULevelStreaming::ResetPriorityOverride ( )

Restore the original streaming level priority after a call to SetPriorityOverride().

◆ Serialize()

void ULevelStreaming::Serialize ( FArchive Ar)
overridevirtual

Handles reading, writing, and reference collecting using FArchive. This implementation handles all FProperty serialization, but can be overridden for native variables.

Reimplemented from UObject.

◆ SetCurrentState()

void ULevelStreaming::SetCurrentState ( ELevelStreamingState  NewState)
protected

Updates the current state of the streaming level and notifies any observers.

◆ SetIsRequestingUnloadAndRemoval()

void ULevelStreaming::SetIsRequestingUnloadAndRemoval ( bool  bInIsRequestingUnloadAndRemoval)

Sets if the streaming level should be unloaded and removed.

◆ SetLevelLODIndex()

void ULevelStreaming::SetLevelLODIndex ( int32  LODIndex)

Sets the world composition level LOD index and marks the streaming level as requiring consideration.

◆ SetLoadedLevel()

void ULevelStreaming::SetLoadedLevel ( ULevel Level)
protectedvirtual

Sets the value of LoadedLevel

◆ SetPriority()

void ULevelStreaming::SetPriority ( int32  NewPriority)

Sets the relative priority of considering the streaming level. Changing the priority will not interrupt the currently considered level, but will affect the next time a level is being selected for evaluation.

◆ SetPriorityOverride()

void ULevelStreaming::SetPriorityOverride ( int32  PriorityOverride)

Provide a temporary priority override for the streaming level. Only one override can be specified at a time. Original priority must be restored with ResetPriorityOverride().

◆ SetShouldBeLoaded()

void ULevelStreaming::SetShouldBeLoaded ( bool  bInShouldBeLoaded)
virtual

Virtual that can be overridden to change whether a streaming level should be loaded. Doesn't do anything at the base level as should be loaded defaults to true

◆ SetShouldBeVisible()

void ULevelStreaming::SetShouldBeVisible ( bool  bInShouldBeVisible)

Sets the should be visible flag and marks the streaming level as requiring consideration.

◆ SetWorldAsset()

void ULevelStreaming::SetWorldAsset ( const TSoftObjectPtr< UWorld > &  NewWorldAsset)
virtual

Setter for WorldAsset. Use this instead of setting WorldAsset directly to update the cached package name.

◆ SetWorldAssetByPackageName()

void ULevelStreaming::SetWorldAssetByPackageName ( FName  InPackageName)

Sets the world asset based on the package name assuming it contains a world of the same name.

◆ ShouldBeAlwaysLoaded()

virtual bool ULevelStreaming::ShouldBeAlwaysLoaded ( ) const
inlinevirtual

◆ ShouldBeLoaded()

virtual bool ULevelStreaming::ShouldBeLoaded ( ) const
inlinevirtual

Return whether this level should be present in memory which in turn tells the streaming code to stream it in. Please note that a change in value from false to true only tells the streaming code that it needs to START streaming it in so the code needs to return true an appropriate amount of time before it is needed.

Returns
true if level should be loaded/ streamed in, false otherwise

◆ ShouldBeVisible()

bool ULevelStreaming::ShouldBeVisible ( ) const
virtual

Return whether this level should be visible/ associated with the world if it is loaded.

Returns
true if the level should be visible, false otherwise

◆ ShouldBlockOnUnload()

virtual bool ULevelStreaming::ShouldBlockOnUnload ( ) const
inlinevirtual

◆ ShouldRequireFullVisibilityToRender()

virtual bool ULevelStreaming::ShouldRequireFullVisibilityToRender ( ) const
inlinevirtual

Returns whether level should start to render only when it will be fully added to the world or not.

◆ ShouldReuseUnloadedButStillAroundLevels()

bool ULevelStreaming::ShouldReuseUnloadedButStillAroundLevels ( const ULevel InLevel)
static

If true level streaming can reuse an unloaded level that wasn't GC'd yet.

◆ ShouldServerUseMakingVisibleTransactionRequest()

bool ULevelStreaming::ShouldServerUseMakingVisibleTransactionRequest ( )
static

If true server will wait for client acknowledgment before making treating streaming levels as visible for the client

◆ UpdateNetVisibilityTransactionState()

void ULevelStreaming::UpdateNetVisibilityTransactionState ( bool  bInShouldBeVisible,
FNetLevelVisibilityTransactionId  TransactionId 
)

Set the current state of the current visibility/streaming transaction

◆ ValidateUniqueWorldAsset()

bool ULevelStreaming::ValidateUniqueWorldAsset ( UWorld PersistentWorld)
protected

Called by RequestLevel to detect existing streaming level with same world asset

Friends And Related Symbol Documentation

◆ FAckNetVisibilityTransaction

◆ FStreamingLevelPrivateAccessor

◆ operator!= [1/2]

◆ operator!= [2/2]

◆ operator== [1/2]

bool operator== ( ECurrentState  A,
ELevelStreamingState  B 
)
friend

◆ operator== [2/2]

bool operator== ( ELevelStreamingState  A,
ECurrentState  B 
)
friend

Member Data Documentation

◆ AsyncRequestIDs

TArray<int32> ULevelStreaming::AsyncRequestIDs
protected

IDs used to track the underlying async load requests for the level

◆ bClientOnlyVisible

bool ULevelStreaming::bClientOnlyVisible

Applied to LoadedLevel

◆ bDisableDistanceStreaming

uint8 ULevelStreaming::bDisableDistanceStreaming

Whether this level streaming object should be ignored by world composition distance streaming, so streaming state can be controlled by other systems (ex: in blueprints)

◆ bDrawOnLevelStatusMap

uint8 ULevelStreaming::bDrawOnLevelStatusMap

If true, will be drawn on the 'level streaming status' map (STAT LEVELMAP console command)

◆ bGarbageCollectionClusteringEnabled

uint8 ULevelStreaming::bGarbageCollectionClusteringEnabled

If true, allows garbage collection clustering for the level.

◆ bIsStatic

uint8 ULevelStreaming::bIsStatic

Whether this level only contains static actors that aren't affected by gameplay or replication. If true, the engine can make certain optimizations and will add this level to the StaticLevels collection.

◆ bLocked

uint8 ULevelStreaming::bLocked

Whether this level is locked; that is, its actors are read-only.

◆ bShouldBeLoaded

uint8 ULevelStreaming::bShouldBeLoaded
protected

Whether the level should be loaded

◆ bShouldBlockOnLoad

uint8 ULevelStreaming::bShouldBlockOnLoad

Whether we want to force a blocking load

◆ bShouldBlockOnUnload

uint8 ULevelStreaming::bShouldBlockOnUnload

Whether we want to force a blocking unload

◆ bSkipClientUseMakingInvisibleTransactionRequest

uint8 ULevelStreaming::bSkipClientUseMakingInvisibleTransactionRequest
protected

Whether the streaming level can safely skip making invisible transaction request from the client to the server

◆ bSkipClientUseMakingVisibleTransactionRequest

uint8 ULevelStreaming::bSkipClientUseMakingVisibleTransactionRequest
protected

Whether the streaming level can safely skip making visible transaction request from the client to the server

◆ EditorStreamingVolumes

TArray<TObjectPtr<ALevelStreamingVolume> > ULevelStreaming::EditorStreamingVolumes

The level streaming volumes bound to this level.

◆ LastAsyncLoadPackagePath

FPackagePath ULevelStreaming::LastAsyncLoadPackagePath
protected

Last async load request package path

◆ LastVolumeUnloadRequestTime

float ULevelStreaming::LastVolumeUnloadRequestTime

Time of last volume unload request. Used in preventing spurious unload requests.

◆ LevelColor

FLinearColor ULevelStreaming::LevelColor

The level color used for visualization. (Show -> Advanced -> Level Coloration)

◆ LevelTransform

FTransform ULevelStreaming::LevelTransform

Transform applied to actors after loading.

◆ LoadedLevel

TObjectPtr<class ULevel> ULevelStreaming::LoadedLevel
protected

Pointer to Level object if currently loaded/ streamed in.

◆ LODPackageNames

TArray<FName> ULevelStreaming::LODPackageNames

LOD versions of this level

◆ LODPackageNamesToLoad

TArray<FName> ULevelStreaming::LODPackageNamesToLoad

LOD package names on disk

◆ MinTimeBetweenVolumeUnloadRequests

float ULevelStreaming::MinTimeBetweenVolumeUnloadRequests

Cooldown time in seconds between volume-based unload requests. Used in preventing spurious unload requests.

◆ OnLevelHidden

FLevelStreamingVisibilityStatus ULevelStreaming::OnLevelHidden

Called when level is no longer visible, may not be removed from world yet

◆ OnLevelLoaded

FLevelStreamingLoadedStatus ULevelStreaming::OnLevelLoaded

Called when level is streamed in

◆ OnLevelShown

FLevelStreamingVisibilityStatus ULevelStreaming::OnLevelShown

Called when level is added to the world and is visible

◆ OnLevelUnloaded

FLevelStreamingLoadedStatus ULevelStreaming::OnLevelUnloaded

Called when level is streamed out

◆ PackageNameToLoad

FName ULevelStreaming::PackageNameToLoad

If this isn't Name_None, then we load from this package on disk to the new package named PackageName

◆ PendingUnloadLevel

TObjectPtr<class ULevel> ULevelStreaming::PendingUnloadLevel
protected

Pointer to a Level object that was previously active and was replaced with a new LoadedLevel (for LOD switching)

◆ StreamingPriority

int32 ULevelStreaming::StreamingPriority
protected

The relative priority of considering the streaming level. Changing the priority will not interrupt the currently considered level, but will affect the next time a level is being selected for evaluation.

◆ WorldAsset

TSoftObjectPtr<UWorld> ULevelStreaming::WorldAsset
protected

The reference to the world containing the level to load


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