163 bool bSlowPrecompileTask =
false;
234 RENDERCORE_API void EnqueuePendingPrecompileTask(
const FString& PSOCacheKey);
247 double LastAutoSaveTime = 0.0;
248 double LastAutoSaveTimeLogBoundPSO = 0.0;
249 int32 LastAutoSaveNum = 0;
257 struct FPipelineCachePSOContext
262 FShaderCachePrecompileContext PrecompileContext;
276 FString CurrentPrecompilingPSOFCKey;
279 std::atomic_bool bHasShaderPipelineTask =
false;
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
bool(* FPSOMaskComparisonFn)(uint64 ReferenceMask, uint64 PSOMask)
Definition PipelineFileCache.h:295
SaveMode
Definition PipelineFileCache.h:317
Definition RHIResources.h:696
Definition RHIResources.h:686
Definition RHIResources.h:679
Definition SecureHash.h:226
Definition ShaderPipelineCache.cpp:287
Definition ShaderPipelineCache.cpp:405
Definition ShaderPipelineCache.h:162
FShaderCachePrecompileContext()=default
const FString & GetCacheName() const
Definition ShaderPipelineCache.h:169
void SetPrecompilationIsSlowTask()
Definition ShaderPipelineCache.h:170
FShaderCachePrecompileContext(const FString &CacheNameIn)
Definition ShaderPipelineCache.h:167
bool IsPrecompilationSlowTask() const
Definition ShaderPipelineCache.h:171
Definition ShaderPipelineCache.h:79
static RENDERCORE_API bool OpenPipelineFileCache(EShaderPlatform Platform)
Definition ShaderPipelineCache.cpp:852
DECLARE_MULTICAST_DELEGATE_ThreeParams(FShaderPrecompilationCompleteDelegate, uint32, double, const FShaderCachePrecompileContext &)
static RENDERCORE_API void PauseBatching()
Definition ShaderPipelineCache.cpp:754
static RENDERCORE_API void Shutdown()
Definition ShaderPipelineCache.cpp:745
static FShaderCacheOpenedDelegate & GetCacheOpenedDelegate()
Definition ShaderPipelineCache.h:192
RENDERCORE_API TStatId GetStatId() const
Definition ShaderPipelineCache.cpp:2018
ELibraryState
Definition ShaderPipelineCache.h:151
@ Opened
Definition ShaderPipelineCache.h:152
@ Closed
Definition ShaderPipelineCache.h:154
@ OpenedComponent
Definition ShaderPipelineCache.h:153
DECLARE_MULTICAST_DELEGATE_FiveParams(FShaderCacheOpenedDelegate, FString const &, EShaderPlatform, uint32, const FGuid &, FShaderCachePrecompileContext &)
static FShaderCachePreOpenDelegate & GetCachePreOpenDelegate()
Definition ShaderPipelineCache.h:182
static RENDERCORE_API bool SetGameUsageMaskWithComparison(uint64 Mask, FPSOMaskComparisonFn InComparisonFnPtr)
Definition ShaderPipelineCache.cpp:668
static FShaderCacheClosedDelegate & GetCacheClosedDelegate()
Definition ShaderPipelineCache.h:202
RENDERCORE_API bool NeedsRenderingResumedForRenderingThreadTick() const
Definition ShaderPipelineCache.cpp:2013
DECLARE_MULTICAST_DELEGATE_ThreeParams(FShaderCachePreOpenDelegate, FString const &, EShaderPlatform, bool &)
static RENDERCORE_API void CloseUserPipelineFileCache()
Definition ShaderPipelineCache.cpp:928
RENDERCORE_API bool IsTickable() const
Definition ShaderPipelineCache.cpp:1773
DECLARE_MULTICAST_DELEGATE_TwoParams(FShaderCacheClosedDelegate, FString const &, EShaderPlatform)
static RENDERCORE_API int32 GetGameVersionForPSOFileCache()
Definition ShaderPipelineCache.cpp:645
static RENDERCORE_API bool OpenUserPipelineFileCache(EShaderPlatform Platform)
Definition ShaderPipelineCache.cpp:874
BatchMode
Definition ShaderPipelineCache.h:95
static RENDERCORE_API bool IsPrecompiling()
Definition ShaderPipelineCache.cpp:1726
virtual RENDERCORE_API ~FShaderPipelineCache()
Definition ShaderPipelineCache.cpp:1639
static RENDERCORE_API void SetBatchMode(BatchMode Mode)
Definition ShaderPipelineCache.cpp:776
static RENDERCORE_API void ShaderLibraryStateChanged(ELibraryState State, EShaderPlatform Platform, FString const &Name, int32 ComponentID)
Definition ShaderPipelineCache.cpp:958
static RENDERCORE_API uint32 NumPrecompilesRemaining()
Definition ShaderPipelineCache.cpp:824
static RENDERCORE_API bool IsBatchingPaused()
Definition ShaderPipelineCache.cpp:767
DECLARE_MULTICAST_DELEGATE_TwoParams(FShaderPrecompilationBeginDelegate, uint32, const FShaderCachePrecompileContext &)
static FShaderPrecompilationCompleteDelegate & GetPrecompilationCompleteDelegate()
Definition ShaderPipelineCache.h:222
static FShaderPrecompilationBeginDelegate & GetPrecompilationBeginDelegate()
Definition ShaderPipelineCache.h:217
static RENDERCORE_API bool SavePipelineFileCache(FPipelineFileCacheManager::SaveMode Mode)
Definition ShaderPipelineCache.cpp:911
static RENDERCORE_API void ResumeBatching()
Definition ShaderPipelineCache.cpp:809
Definition TickableObjectRenderThread.h:15
Definition UnrealString.h.inl:34
Definition UniquePtr.h:107
Definition ShaderStableKeyDebugInfoReader.h:19
Definition LightweightStats.h:416