62 return !(*
this ==
rhs);
167 return !(*
this ==
rhs);
230 , bDefaultMaterial(0)
231 , VertexFactoryType(nullptr)
267#if PSO_PRECACHING_VALIDATE
268 int32 PSOCollectorIndex : 31;
269 int32 bDefaultMaterial : 1;
294 return !(*
this ==
rhs);
321 return PSOCollectors[
Index].CollectFunction;
327 return TEXT(
"Unknown");
330 return PSOCollectors[
Index].Name;
337 static inline int32 PSOCollectorCount = 0;
339 struct FPSOCollectorData
342 const TCHAR* Name =
nullptr;
357 Index = FGlobalPSOCollectorManager::PSOCollectorCount;
361 FGlobalPSOCollectorManager::PSOCollectors[
Index].Name = InName;
362 FGlobalPSOCollectorManager::PSOCollectorCount++;
367 FGlobalPSOCollectorManager::PSOCollectors[
Index].CollectFunction =
nullptr;
368 FGlobalPSOCollectorManager::PSOCollectors[
Index].Name =
nullptr;
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define check(expr)
Definition AssertionMacros.h:314
@ INDEX_NONE
Definition CoreMiscDefines.h:150
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
#define PSO_PRECACHING_VALIDATE
Definition PSOPrecacheFwd.h:22
EPSOPrecacheMode
Definition PSOPrecache.h:215
ENGINE_API void AddMaterialInterfacePSOPrecacheParamsToList(const FMaterialInterfacePSOPrecacheParams &EntryToAdd, FMaterialInterfacePSOPrecacheParamsList &List)
Definition PSOPrecache.cpp:154
ENGINE_API bool IsResourcePSOPrecachingEnabled()
Definition PSOPrecache.cpp:104
ENGINE_API EPSOPrecacheProxyCreationStrategy GetPSOPrecacheProxyCreationStrategy()
Definition PSOPrecache.cpp:114
ENGINE_API bool ProxyCreationWhenPSOReady()
Definition PSOPrecache.cpp:132
void(* GlobalPSOCollectorFunction)(const FSceneTexturesConfig &SceneTexturesConfig, int32 GlobalPSOCollectorIndex, TArray< FPSOPrecacheData > &PSOInitializers)
Definition PSOPrecache.h:307
TArray< FPSOPrecacheData > FPSOPrecacheDataArray
Definition PSOPrecache.h:274
TArray< FPSOPrecacheRequestResult, TInlineAllocator< 4 > > FPSOPrecacheRequestResultArray
Definition PSOPrecache.h:275
ENGINE_API bool ShouldBoostPSOPrecachePriorityOnDraw()
Definition PSOPrecache.cpp:109
TArray< FPSOPrecacheVertexFactoryData, TInlineAllocator< 2 > > FPSOPrecacheVertexFactoryDataList
Definition PSOPrecache.h:176
EPSOPrecacheProxyCreationStrategy
Definition PSOPrecache.h:400
@ UseDefaultMaterialUntilPSOPrecached
ENGINE_API void BoostPrecachedPSORequestsOnDraw(const class FPrimitiveSceneInfo *SceneInfo)
ENGINE_API EPSOPrecacheMode GetPSOPrecacheMode()
Definition PSOPrecache.cpp:81
EPSOPrecacheType
Definition PSOPrecache.h:21
uint16 FVertexDeclarationElementListID
Definition PSOPrecache.h:144
TArray< FPSOPrecacheVertexFactoryDataPerMaterialIndex, TInlineAllocator< 4 > > FPSOPrecacheVertexFactoryDataPerMaterialIndexList
Definition PSOPrecache.h:184
ENGINE_API bool IsPSOShaderPreloadingEnabled()
Definition PSOPrecache.cpp:94
ENGINE_API FPSOPrecacheRequestResultArray RequestPrecachePSOs(EPSOPrecacheType PSOPrecacheType, const FPSOPrecacheDataArray &PSOInitializers)
Definition PSOPrecache.cpp:198
ENGINE_API bool IsComponentPSOPrecachingEnabled()
Definition PSOPrecache.cpp:99
EPSOPrecachePriority
Definition PipelineStateCache.h:33
EStencilMask
Definition RHIDefinitions.h:428
@ SM_Default
Definition RHIDefinitions.h:429
@ PT_TriangleList
Definition RHIDefinitions.h:824
uint32 PointerHash(const void *Key)
Definition TypeHash.h:91
constexpr uint32 HashCombine(uint32 A, uint32 C)
Definition TypeHash.h:36
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
if(Failed) console_printf("Failed.\n")
Definition PSOPrecache.h:313
static constexpr uint32 MaxPSOCollectorCount
Definition PSOPrecache.h:315
static GlobalPSOCollectorFunction GetCollectFunction(int32 Index)
Definition PSOPrecache.h:318
static int32 GetPSOCollectorCount()
Definition PSOPrecache.h:317
static ENGINE_API int32 GetIndex(const TCHAR *Name)
Definition PSOPrecache.cpp:177
static const TCHAR * GetName(int32 Index)
Definition PSOPrecache.h:323
Definition RHIResources.h:4572
Definition MaterialShared.h:2058
Definition PrimitiveSceneInfo.h:266
Definition RHIResources.h:1018
Definition RHIResources.h:725
Definition PSOPrecache.h:353
FRegisterGlobalPSOCollectorFunction(GlobalPSOCollectorFunction InCollectFunction, const TCHAR *InName)
Definition PSOPrecache.h:355
int32 GetIndex() const
Definition PSOPrecache.h:371
~FRegisterGlobalPSOCollectorFunction()
Definition PSOPrecache.h:365
Definition VertexFactory.h:314
Definition EnumAsByte.h:22
Definition ContainerAllocationPolicies.h:894
Definition MaterialInterface.h:296
Type
Definition EngineTypes.h:3789
@ Stationary
Definition EngineTypes.h:3804
@ Static
Definition EngineTypes.h:3795
@ Movable
Definition EngineTypes.h:3812
Type
Definition RHIFeatureLevel.h:20
@ Num
Definition RHIFeatureLevel.h:54
U16 Index
Definition radfft.cpp:71
Definition PSOPrecache.h:187
UMaterialInterface * MaterialInterface
Definition PSOPrecache.h:189
EPSOPrecachePriority Priority
Definition PSOPrecache.h:188
FPSOPrecacheVertexFactoryDataList VertexFactoryDataList
Definition PSOPrecache.h:191
FPSOPrecacheParams PSOPrecacheParams
Definition PSOPrecache.h:190
Definition PSOPrecache.h:278
friend uint32 GetTypeHash(const FMaterialPSOPrecacheParams &Params)
Definition PSOPrecache.h:297
FPSOPrecacheVertexFactoryData VertexFactoryData
Definition PSOPrecache.h:281
bool operator==(const FMaterialPSOPrecacheParams &Other) const
Definition PSOPrecache.h:284
FPSOPrecacheParams PrecachePSOParams
Definition PSOPrecache.h:282
ERHIFeatureLevel::Type FeatureLevel
Definition PSOPrecache.h:279
bool operator!=(const FMaterialPSOPrecacheParams &rhs) const
Definition PSOPrecache.h:292
FMaterial * Material
Definition PSOPrecache.h:280
Definition PSOPrecache.h:226
FGraphicsPipelineStateInitializer GraphicsPSOInitializer
Definition PSOPrecache.h:249
EType
Definition PSOPrecache.h:237
FShaderPreloadData ShaderPreloadData
Definition PSOPrecache.h:253
FRHIComputeShader * ComputeShader
Definition PSOPrecache.h:250
bool bRequired
Definition PSOPrecache.h:245
FPSOPrecacheData()
Definition PSOPrecache.h:227
EType Type
Definition PSOPrecache.h:241
void SetComputeShader(const TShaderRef< FShader > &InComputeShader)
Definition PSOPrecache.h:255
Definition PSOPrecache.h:30
uint64 bRenderInDepthPass
Definition PSOPrecache.h:118
uint64 bForceLODModel
Definition PSOPrecache.h:128
uint64 bSkinnedMesh
Definition PSOPrecache.h:115
uint64 bUsesIndirectLightingCache
Definition PSOPrecache.h:123
uint64 Unused
Definition PSOPrecache.h:136
TEnumAsByte< EComponentMobility::Type > GetMobility() const
Definition PSOPrecache.h:75
TEnumAsByte< EStencilMask > GetStencilWriteMask() const
Definition PSOPrecache.h:90
uint64 Data
Definition PSOPrecache.h:138
FPSOPrecacheParams()
Definition PSOPrecache.h:31
void SetStencilWriteMask(EStencilMask InStencilMask)
Definition PSOPrecache.h:85
friend uint32 GetTypeHash(const FPSOPrecacheParams &Params)
Definition PSOPrecache.h:65
uint64 bAnyMaterialHasWorldPositionOffset
Definition PSOPrecache.h:131
uint64 bRenderInMainPass
Definition PSOPrecache.h:117
uint64 bDisableBackFaceCulling
Definition PSOPrecache.h:126
uint64 StencilWriteMask
Definition PSOPrecache.h:132
EPixelFormat GetBassPixelFormat() const
Definition PSOPrecache.h:100
uint64 bStaticLighting
Definition PSOPrecache.h:119
uint64 bDefaultMaterial
Definition PSOPrecache.h:111
uint64 bRenderCustomDepth
Definition PSOPrecache.h:121
uint64 bAffectDynamicIndirectLighting
Definition PSOPrecache.h:124
uint64 BasePassPixelFormat
Definition PSOPrecache.h:134
bool operator==(const FPSOPrecacheParams &Other) const
Definition PSOPrecache.h:55
uint64 bSplineMesh
Definition PSOPrecache.h:114
uint64 bCastShadow
Definition PSOPrecache.h:120
bool operator!=(const FPSOPrecacheParams &rhs) const
Definition PSOPrecache.h:60
void SetMobility(EComponentMobility::Type InMobility)
Definition PSOPrecache.h:70
uint64 bCastShadowAsTwoSided
Definition PSOPrecache.h:127
uint64 Mobility
Definition PSOPrecache.h:130
bool IsMoveable() const
Definition PSOPrecache.h:80
uint64 bReverseCulling
Definition PSOPrecache.h:125
void SetBassPixelFormat(EPixelFormat InBasePassPixelFormat)
Definition PSOPrecache.h:95
uint64 PrimitiveType
Definition PSOPrecache.h:109
uint64 bCanvasMaterial
Definition PSOPrecache.h:112
Definition PSOPrecache.h:179
FPSOPrecacheVertexFactoryDataList VertexFactoryDataList
Definition PSOPrecache.h:181
int16 MaterialIndex
Definition PSOPrecache.h:180
Definition PSOPrecache.h:150
bool operator!=(const FPSOPrecacheVertexFactoryData &rhs) const
Definition PSOPrecache.h:165
bool operator==(const FPSOPrecacheVertexFactoryData &Other) const
Definition PSOPrecache.h:160
friend uint32 GetTypeHash(const FPSOPrecacheVertexFactoryData &Params)
Definition PSOPrecache.h:170
FPSOPrecacheVertexFactoryData()=default
FPSOPrecacheVertexFactoryData(const FVertexFactoryType *InVertexFactoryType)
Definition PSOPrecache.h:152
const FVertexFactoryType * VertexFactoryType
Definition PSOPrecache.h:155
FRHIVertexDeclaration * CustomDefaultVertexDeclaration
Definition PSOPrecache.h:158
Definition SceneTexturesConfig.h:114
Definition PSOPrecache.h:197
TArray< TShaderRef< FShader >, TInlineAllocator< 3 > > Shaders
Definition PSOPrecache.h:211
FShaderPreloadData(const TShaderRef< FShader > &InShader)
Definition PSOPrecache.h:200
FShaderPreloadData(TArray< TShaderRef< FShader >, TInlineAllocator< 3 > > &&InShaders)
Definition PSOPrecache.h:205
FShaderPreloadData()=default