18class UPrimitiveComponent;
39class UPrimitiveComponent;
53 class FCoarseMeshStreamingManager;
139 const uint8* CachedData;
140 int32 CachedDataNumBytes;
142 FName CorrespondingWaveName;
143 FGuid CorrespondingWaveGuid;
605 static void LogWarning();
#define NULL
Definition oodle2base.h:134
uint32 FIoFilenameHash
Definition BulkData.h:68
void FlushResourceStreaming()
Definition ContentStreaming.cpp:68
ERemoveStreamingViews
Definition ContentStreaming.h:64
@ RemoveStreamingViews_All
Definition ContentStreaming.h:68
@ RemoveStreamingViews_Normal
Definition ContentStreaming.h:66
EAudioChunkLoadResult
Definition ContentStreaming.h:505
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
EStreamableRenderAssetType
Definition StreamableRenderAsset.h:26
uint32 Offset
Definition VulkanMemory.cpp:4033
Definition ContentStreaming.h:110
ENGINE_API FAudioChunkHandle()
Definition ContentStreaming.cpp:1422
ENGINE_API const uint8 * GetData() const
Definition ContentStreaming.cpp:1533
ENGINE_API ~FAudioChunkHandle()
Definition ContentStreaming.cpp:1525
ENGINE_API bool IsValid() const
Definition ContentStreaming.cpp:1543
ENGINE_API uint32 Num() const
Definition ContentStreaming.cpp:1538
ENGINE_API FAudioChunkHandle & operator=(const FAudioChunkHandle &Other)
Definition ContentStreaming.cpp:1498
Definition AudioStreamCacheMemoryHandle.h:21
Definition CanvasTypes.h:211
Definition NameTypes.h:617
Definition OutputDevice.h:133
Definition RenderAssetUpdate.h:38
Definition SoundWave.h:1571
Definition SoundWave.h:1742
Definition UnrealClient.h:412
Definition AudioDecompress.h:31
Definition NaniteCoarseMeshStreamingManager.h:15
UE_REWRITE SizeType Num() const
Definition Array.h:1144
Definition AndroidPlatformMisc.h:14
Definition UnrealString.h.inl:34
Definition RefCounting.h:454
Definition SharedPointer.h:1295
Definition AnimStreamable.h:91
Definition SkeletalMesh.h:440
Definition StaticMesh.h:593
Definition StreamableRenderAsset.h:37
Definition SparseVolumeTexture.h:452
Definition Texture2D.h:26
Type
Definition TaskGraphInterfaces.h:57
@ AnyThread
Definition TaskGraphInterfaces.h:67
Definition SkinnedMeshComponent.h:50
Definition AudioStreamingCache.h:519
Definition AnimCompressionTypes.h:775
Definition ContentStreaming.h:612
virtual int32 RenderStatAudioStreaming(UWorld *World, FViewport *Viewport, FCanvas *Canvas, int32 X, int32 Y, const FVector *ViewLocation, const FRotator *ViewRotation) override
Definition ContentStreaming.h:627
virtual bool RequestChunk(const FSoundWaveProxyPtr &SoundWave, uint32 ChunkIndex, TFunction< void(EAudioChunkLoadResult)> OnLoadCompleted=LoadCompletedDefault, ENamedThreads::Type ThreadToCallOnLoadCompletedOn=ENamedThreads::AnyThread, bool bForImmediatePlayback=false) override
Definition ContentStreaming.h:624
virtual void RemoveMemoryCountedFeature(const FAudioStreamCacheMemoryHandle &Feature) override
Definition ContentStreaming.h:623
virtual void SetProfilingMode(bool bEnabled) override
Definition ContentStreaming.h:629
virtual void SetDisregardWorldResourcesForFrames(int32 NumFrames)
Definition ContentStreaming.h:617
virtual uint64 TrimMemory(uint64 NumBytesToFree) override
Definition ContentStreaming.h:626
virtual void RemoveLevel(class ULevel *Level)
Definition ContentStreaming.h:619
virtual void CancelForcedResources() override
Definition ContentStreaming.h:615
virtual FString GenerateMemoryReport() override
Definition ContentStreaming.h:628
virtual FAudioChunkHandle GetLoadedChunk(const FSoundWaveProxyPtr &SoundWave, uint32 ChunkIndex, bool bBlockForLoad=false, bool bForImmediatePlayback=false) const override
Definition ContentStreaming.h:625
virtual void NotifyLevelOffset(class ULevel *Level, const FVector &Offset)
Definition ContentStreaming.h:620
virtual void UpdateResourceStreaming(float DeltaTime, bool bProcessEverything=false) override
Definition ContentStreaming.h:613
virtual int32 BlockTillAllRequestsFinished(float TimeLimit=0.0f, bool bLogResults=false) override
Definition ContentStreaming.h:614
virtual void AddMemoryCountedFeature(const FAudioStreamCacheMemoryHandle &Feature) override
Definition ContentStreaming.h:622
virtual void NotifyLevelChange() override
Definition ContentStreaming.h:616
virtual void AddLevel(class ULevel *Level)
Definition ContentStreaming.h:618
virtual void AddReferenceToChunk(const FAudioChunkHandle &InHandle) override
Definition ContentStreaming.h:632
virtual void RemoveReferenceToChunk(const FAudioChunkHandle &InHandle) override
Definition ContentStreaming.h:633
Definition StreamingManagerTexture.h:32
Definition ContentStreaming.h:665
FRenderAssetStreamingManager * RenderAssetStreamingManager
Definition ContentStreaming.h:859
ENGINE_API bool IsStreamingEnabled() const
Definition ContentStreaming.cpp:990
ENGINE_API void RemoveStreamingManager(IStreamingManager *StreamingManager)
Definition ContentStreaming.cpp:1086
ENGINE_API struct FVirtualTextureChunkStreamingManager & GetVirtualTextureStreamingManager() const
Definition ContentStreaming.cpp:1049
virtual int32 BlockTillAllRequestsFinished(float TimeLimit=0.0f, bool bLogResults=false) override
Definition ContentStreaming.cpp:915
ENGINE_API IRenderAssetStreamingManager & GetRenderAssetStreamingManager() const
Definition ContentStreaming.cpp:1027
virtual void AddOrRemoveTextureStreamingManagerIfNeeded(bool bIsInit=false)
Definition ContentStreaming.cpp:1258
virtual void UpdateResourceStreaming(float DeltaTime, bool bProcessEverything=false) override
Definition ContentStreaming.cpp:848
ENGINE_API bool IsTextureStreamingEnabled() const
Definition ContentStreaming.cpp:995
int32 DisableResourceStreamingCount
Definition ContentStreaming.h:853
ENGINE_API void AddStreamingManager(IStreamingManager *StreamingManager)
Definition ContentStreaming.cpp:1076
float LoadMapTimeLimit
Definition ContentStreaming.h:856
FVirtualTextureChunkStreamingManager * VirtualTextureStreamingManager
Definition ContentStreaming.h:868
Nanite::FCoarseMeshStreamingManager * NaniteCoarseMeshStreamingManager
Definition ContentStreaming.h:871
void PropagateLightingScenarioChange() override
Definition ContentStreaming.cpp:1217
void EnableResourceStreaming()
Definition ContentStreaming.cpp:1104
virtual void RemoveLevel(class ULevel *Level) override
Definition ContentStreaming.cpp:1149
ENGINE_API IAudioStreamingManager & GetAudioStreamingManager() const
Definition ContentStreaming.cpp:1033
virtual void AddLevel(class ULevel *Level) override
Definition ContentStreaming.cpp:1134
virtual void NotifyActorDestroyed(AActor *Actor) override
Definition ContentStreaming.cpp:1174
ENGINE_API ~FStreamingManagerCollection()
Definition ContentStreaming.cpp:782
ENGINE_API IAnimationStreamingManager & GetAnimationStreamingManager() const
Definition ContentStreaming.cpp:1043
ENGINE_API bool IsRenderAssetStreamingEnabled(EStreamableRenderAssetType FilteredAssetType) const
Definition ContentStreaming.cpp:1000
virtual int32 GetNumWantingResourcesID() const override
Definition ContentStreaming.cpp:950
ENGINE_API Nanite::FCoarseMeshStreamingManager * GetNaniteCoarseMeshStreamingManager() const
Definition ContentStreaming.cpp:1055
virtual void NotifyLevelChange() override
Definition ContentStreaming.cpp:980
virtual int32 StreamAllResources(float TimeLimit=0.0f) override
Definition ContentStreaming.cpp:884
void SetNumIterationsForNextFrame(int32 NumIterations)
Definition ContentStreaming.cpp:821
virtual void SetDisregardWorldResourcesForFrames(int32 NumFrames) override
Definition ContentStreaming.cpp:1061
virtual void NotifyPrimitiveUpdated_Concurrent(const UPrimitiveComponent *Primitive) override
Definition ContentStreaming.cpp:1207
IAnimationStreamingManager * AnimationStreamingManager
Definition ContentStreaming.h:865
int32 NumIterations
Definition ContentStreaming.h:850
virtual void NotifyLevelOffset(class ULevel *Level, const FVector &Offset) override
Definition ContentStreaming.cpp:1163
virtual void CancelForcedResources() override
Definition ContentStreaming.cpp:967
ENGINE_API FStreamingManagerCollection()
Definition ContentStreaming.cpp:740
virtual bool Exec(UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar) override
Definition ContentStreaming.cpp:1119
virtual void NotifyPrimitiveUpdated(const UPrimitiveComponent *Primitive) override
Definition ContentStreaming.cpp:1196
void DisableResourceStreaming()
Definition ContentStreaming.cpp:1094
TArray< IStreamingManager * > StreamingManagers
Definition ContentStreaming.h:848
virtual void NotifyPrimitiveDetached(const UPrimitiveComponent *Primitive) override
Definition ContentStreaming.cpp:1185
ENGINE_API IRenderAssetStreamingManager & GetTextureStreamingManager() const
Definition ContentStreaming.cpp:1022
IAudioStreamingManager * AudioStreamingManager
Definition ContentStreaming.h:862
virtual int32 GetNumWantingResources() const override
Definition ContentStreaming.cpp:930
Definition ContentStreaming.h:75
float BoostFactor
Definition ContentStreaming.h:94
FVector ViewOrigin
Definition ContentStreaming.h:88
float ScreenSize
Definition ContentStreaming.h:90
float Duration
Definition ContentStreaming.h:96
TWeakObjectPtr< AActor > ActorToBoost
Definition ContentStreaming.h:100
FStreamingViewInfo(const FVector &InViewOrigin, float InScreenSize, float InFOVScreenSize, float InBoostFactor, bool bInOverrideLocation, float InDuration, TWeakObjectPtr< AActor > InActorToBoost, TWeakObjectPtr< UWorld > InWorld)
Definition ContentStreaming.h:76
bool bOverrideLocation
Definition ContentStreaming.h:98
TWeakObjectPtr< UWorld > World
Definition ContentStreaming.h:102
float FOVScreenSize
Definition ContentStreaming.h:92
Definition VirtualTextureChunkManager.h:29
Definition ContentStreaming.h:640
virtual void AddStreamingAnim(UAnimStreamable *Anim)=0
virtual bool RemoveStreamingAnim(UAnimStreamable *Anim)=0
virtual SIZE_T GetMemorySizeForAnim(const UAnimStreamable *Anim)=0
virtual const FCompressedAnimSequence * GetLoadedChunk(const UAnimStreamable *Anim, uint32 ChunkIndex, bool bRequestNextChunk) const =0
Definition ContentStreaming.h:517
virtual bool RequestChunk(const FSoundWaveProxyPtr &SoundWave, uint32 ChunkIndex, TFunction< void(EAudioChunkLoadResult)> OnLoadCompleted=LoadCompletedDefault, ENamedThreads::Type ThreadToCallOnLoadCompletedOn=ENamedThreads::AnyThread, bool bForImmediatePlayback=false)=0
virtual void HandleStarvation(const FSoundWaveProxyPtr &SoundWave, const uint32 ChunkIndex, const uint32 InBytesProduced, const uint32 InBytesExpected)
Definition ContentStreaming.h:573
virtual uint64 TrimMemory(uint64 NumBytesToFree)=0
friend FAudioStreamCacheMemoryHandle
Definition ContentStreaming.h:577
virtual FString GenerateMemoryReport()=0
virtual int32 RenderStatAudioStreaming(UWorld *World, FViewport *Viewport, FCanvas *Canvas, int32 X, int32 Y, const FVector *ViewLocation, const FRotator *ViewRotation)=0
static constexpr auto LoadCompletedDefault
Definition ContentStreaming.h:532
friend FAudioChunkHandle
Definition ContentStreaming.h:576
virtual void RemoveMemoryCountedFeature(const FAudioStreamCacheMemoryHandle &Feature)
Definition ContentStreaming.h:601
virtual void SetProfilingMode(bool bEnabled)=0
static FAudioChunkHandle BuildChunkHandle(const uint8 *InData, uint32 NumBytes, const FSoundWaveProxyPtr &InSoundWave, const FName &SoundWaveName, uint32 InChunkIndex, uint64 CacheLookupID)
Definition ContentStreaming.cpp:1565
virtual FAudioChunkHandle GetLoadedChunk(const FSoundWaveProxyPtr &SoundWave, uint32 ChunkIndex, bool bBlockForLoad=false, bool bForImmediatePlayback=false) const =0
virtual void RemoveReferenceToChunk(const FAudioChunkHandle &InHandle)=0
virtual void AddForceInlineSoundWave(const FSoundWaveProxyPtr &SoundWave)
Definition ContentStreaming.h:519
virtual void RemoveForceInlineSoundWave(const FSoundWaveProxyPtr &SoundWave)
Definition ContentStreaming.h:522
virtual void AddReferenceToChunk(const FAudioChunkHandle &InHandle)=0
virtual void AddMemoryCountedFeature(const FAudioStreamCacheMemoryHandle &Feature)
Definition ContentStreaming.h:596
Definition ContentStreaming.h:424
ENGINE_API bool StreamOutTextureData(int64 RequiredMemorySize)
Definition ContentStreaming.cpp:716
virtual bool FastForceFullyResident(UStreamableRenderAsset *RenderAsset)=0
ENGINE_API void RemoveStreamingTexture(UTexture2D *Texture)
Definition ContentStreaming.cpp:726
virtual void GetAssetComponents(const UStreamableRenderAsset *RenderAsset, TArray< const UPrimitiveComponent * > &OutComps, TFunction< bool(const UPrimitiveComponent *)> ShouldChoose=ShouldChooseDefault)=0
virtual void RemoveStreamingRenderAsset(UStreamableRenderAsset *RenderAsset)=0
virtual void PauseRenderAssetStreaming(bool bInShouldPause)=0
virtual bool StreamOutRenderAssetData(int64 RequiredMemorySize)=0
virtual int64 GetMaxEverRequired() const =0
virtual int64 GetPoolSize() const =0
virtual float GetCachedMips() const =0
virtual void MarkMountedStateDirty(FIoFilenameHash FilenameHash)=0
virtual void OnRenderAssetUpdateAbandoned(UStreamableRenderAsset *OwningRenderAsset, TRefCountPtr< FRenderAssetUpdate > &RenderAssetUpdate)=0
ENGINE_API void AddStreamingTexture(UTexture2D *Texture)
Definition ContentStreaming.cpp:721
virtual int64 GetMemoryOverBudget() const =0
virtual void AddRenderedTextureStats(TMap< FString, FRenderedTextureStats > &InOutRenderedTextureAssets)=0
ENGINE_API void PauseTextureStreaming(bool bInShouldPause)
Definition ContentStreaming.cpp:731
virtual int64 GetRequiredPoolSize() const =0
virtual bool IsFullyStreamedIn(UStreamableRenderAsset *RenderAsset)=0
static constexpr auto ShouldChooseDefault
Definition ContentStreaming.h:480
ENGINE_API void UpdateIndividualTexture(UTexture2D *Texture)
Definition ContentStreaming.cpp:711
virtual void BoostTextures(AActor *Actor, float BoostFactor)=0
virtual void ResetMaxEverRequired()=0
virtual void AddStreamingRenderAsset(UStreamableRenderAsset *RenderAsset)=0
virtual void UpdateIndividualRenderAsset(UStreamableRenderAsset *RenderAsset)=0
virtual void GetObjectReferenceBounds(const UObject *RefObject, TArray< FBox > &AssetBoxes)=0
Definition ContentStreaming.h:375
float BoostFactor
Definition ContentStreaming.h:386
FSecondaryLocation(const FVector &InLocation, float InBoostFactor, bool bInOverrideLocation, float InDuration)
Definition ContentStreaming.h:376
float Duration
Definition ContentStreaming.h:388
FVector Location
Definition ContentStreaming.h:384
bool bOverrideLocation
Definition ContentStreaming.h:390
Definition ContentStreaming.h:161
static TArray< FSecondaryLocation > SecondaryLocations
Definition ContentStreaming.h:403
virtual void UpdateResourceStreaming(float DeltaTime, bool bProcessEverything=false)=0
const FStreamingViewInfo & GetViewInformation(int32 ViewIndex) const
Definition ContentStreaming.h:310
void SetupViewInfos(float DeltaTime)
Definition ContentStreaming.cpp:442
static void AddViewInfoToArray(TArray< FStreamingViewInfo > &ViewInfos, const FVector &ViewOrigin, float ScreenSize, float FOVScreenSize, float BoostFactor, bool bOverrideLocation, float Duration, TWeakObjectPtr< AActor > InActorToBoost, TWeakObjectPtr< UWorld > InWorld)
Definition ContentStreaming.cpp:388
ENGINE_API void AddViewLocation(const FVector &Location, float BoostFactor=1.0f, bool bOverrideLocation=false, float Duration=0.0f)
Definition ContentStreaming.cpp:654
virtual bool Exec(UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar)
Definition ContentStreaming.h:267
virtual void NotifyLevelOffset(class ULevel *Level, const FVector &Offset)=0
int32 NumWantingResources
Definition ContentStreaming.h:409
virtual void NotifyPrimitiveUpdated(const UPrimitiveComponent *Primitive)
Definition ContentStreaming.h:294
virtual void NotifyLevelChange()=0
static TArray< FStreamingViewInfo > PendingViewInfos
Definition ContentStreaming.h:397
virtual void NotifyActorDestroyed(AActor *Actor)
Definition ContentStreaming.h:284
virtual void PropagateLightingScenarioChange()
Definition ContentStreaming.h:333
virtual void NotifyPrimitiveUpdated_Concurrent(const UPrimitiveComponent *Primitive)
Definition ContentStreaming.h:299
static ENGINE_API bool HasShutdown()
Definition ContentStreaming.cpp:371
static ENGINE_API struct FStreamingManagerCollection & Get()
Definition ContentStreaming.cpp:332
static bool bPendingRemoveViews
Definition ContentStreaming.h:406
IStreamingManager()
Definition ContentStreaming.h:162
virtual void NotifyPrimitiveDetached(const UPrimitiveComponent *Primitive)
Definition ContentStreaming.h:289
static TArray< FStreamingViewInfo > LastingViewInfos
Definition ContentStreaming.h:400
virtual void AddLevel(class ULevel *Level)=0
virtual void CancelForcedResources()=0
static void RemoveViewInfoFromArray(TArray< FStreamingViewInfo > &ViewInfos, const FVector &ViewOrigin)
Definition ContentStreaming.cpp:420
virtual int32 GetNumWantingResourcesID() const
Definition ContentStreaming.h:327
virtual void RemoveLevel(class ULevel *Level)=0
int32 NumWantingResourcesCounter
Definition ContentStreaming.h:417
static ENGINE_API TArray< FStreamingViewInfo > CurrentViewInfos
Definition ContentStreaming.h:394
int32 GetNumViews() const
Definition ContentStreaming.h:304
static ENGINE_API struct FStreamingManagerCollection * Get_Concurrent()
Definition ContentStreaming.cpp:350
virtual void SetDisregardWorldResourcesForFrames(int32 NumFrames)=0
virtual int32 BlockTillAllRequestsFinished(float TimeLimit=0.0f, bool bLogResults=false)=0
virtual int32 GetNumWantingResources() const
Definition ContentStreaming.h:316
virtual ENGINE_API int32 StreamAllResources(float TimeLimit=0.0f)
Definition ContentStreaming.cpp:702
virtual ~IStreamingManager()
Definition ContentStreaming.h:169
ENGINE_API void AddViewInformation(const FVector &ViewOrigin, float ScreenSize, float FOVScreenSize, float BoostFactor=1.0f, bool bOverrideLocation=false, float Duration=0.0f, TWeakObjectPtr< AActor > InActorToBoost=NULL, TWeakObjectPtr< UWorld > InWorld=NULL)
Definition ContentStreaming.cpp:606
static ENGINE_API void Shutdown()
Definition ContentStreaming.cpp:362
void RemoveStreamingViews(ERemoveStreamingViews RemovalType)
Definition ContentStreaming.cpp:676
Definition WeakObjectPtrTemplates.h:25