19 enum { IsBytewiseComparable =
true };
78#if D3D12RHI_NEEDS_VENDOR_EXTENSIONS
82#if D3D12RHI_NEEDS_SHADER_FEATURE_CHECKS
107#if D3D12RHI_NEEDS_SHADER_FEATURE_CHECKS
115#if PLATFORM_SUPPORTS_BINDLESS_RENDERING
154#if D3D12_RHI_WORKGRAPHS_GRAPHICS
177#if D3D12_RHI_RAYTRACING
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
TArray< D3D12_INPUT_ELEMENT_DESC, TFixedAllocator< MaxVertexElementCount > > FD3D12VertexElements
Definition D3D12Shader.h:23
constexpr bool EnumHasAnyFlags(Enum Flags, Enum Contains)
Definition EnumClassFlags.h:35
void Init()
Definition LockFreeList.h:4
EShaderFrequency
Definition RHIDefinitions.h:202
@ SF_Compute
Definition RHIDefinitions.h:208
@ SF_Amplification
Definition RHIDefinitions.h:205
@ SF_Vertex
Definition RHIDefinitions.h:203
@ SF_Mesh
Definition RHIDefinitions.h:204
@ SF_Geometry
Definition RHIDefinitions.h:207
@ SF_Pixel
Definition RHIDefinitions.h:206
EShaderCodeFeatures
Definition ShaderCore.h:832
Definition D3D12Shader.h:138
@ StaticFrequency
Definition D3D12Shader.h:140
Definition D3D12Shader.h:160
@ StaticFrequency
Definition D3D12Shader.h:162
const FD3D12RootSignature * RootSignature
Definition D3D12Shader.h:164
Definition D3D12Shader.h:144
@ StaticFrequency
Definition D3D12Shader.h:146
Definition D3D12Shader.h:132
@ StaticFrequency
Definition D3D12Shader.h:134
Definition D3D12Shader.h:150
@ StaticFrequency
Definition D3D12Shader.h:152
Definition D3D12RootSignature.h:73
Definition D3D12Shader.h:27
uint32 HashNoStrides
Definition D3D12Shader.h:34
TStaticArray< uint16, MaxVertexElementCount > StreamStrides
Definition D3D12Shader.h:32
FD3D12VertexDeclaration(const FD3D12VertexElements &InElements, const uint16 *InStrides, const uint32 InHash, const uint32 InHashNoStrides)
Definition D3D12Shader.h:37
uint32 Hash
Definition D3D12Shader.h:33
virtual uint32 GetPrecachePSOHash() const final override
Definition D3D12Shader.h:46
FD3D12VertexElements VertexElements
Definition D3D12Shader.h:30
virtual bool GetInitializer(FVertexDeclarationElementList &Init) final override
Definition D3D12VertexDeclaration.cpp:178
Definition D3D12Shader.h:126
@ StaticFrequency
Definition D3D12Shader.h:128
Definition D3D12Shader.h:168
FD3D12WorkGraphShader(EShaderFrequency InFrequency)
Definition D3D12Shader.h:170
FString EntryPoint
Definition D3D12Shader.h:174
const FD3D12RootSignature * RootSignature
Definition D3D12Shader.h:172
Definition RHIResources.h:966
Definition RHIResources.h:1018
Definition RHIResources.h:978
Definition RHIResources.h:960
Definition RHIResources.h:972
Definition RHIResources.h:984
Definition RHIResources.h:725
Definition RHIResources.h:954
Definition RHIResources.h:1033
Definition ArrayView.h:139
UE_REWRITE SizeType Num() const
Definition Array.h:1144
UE_NODEBUG UE_FORCEINLINE_HINT ElementType * GetData() UE_LIFETIMEBOUND
Definition Array.h:1027
Definition StaticArray.h:26
UE_REWRITE constexpr InElementType * GetData()
Definition StaticArray.h:89
UE_REWRITE constexpr int32 Num() const
Definition StaticArray.h:83
Definition D3D12Shader.h:69
FORCEINLINE EShaderCodeFeatures GetFeatures() const
Definition D3D12Shader.h:110
FShaderCodePackedResourceCounts ResourceCounts
Definition D3D12Shader.h:73
FORCEINLINE bool UsesGlobalUniformBuffer() const
Definition D3D12Shader.h:114
D3D12_SHADER_BYTECODE GetShaderBytecode() const
Definition D3D12Shader.h:86
ShaderBytecodeHash GetBytecodeHash() const
Definition D3D12Shader.h:91
FORCEINLINE bool UsesRootConstants() const
Definition D3D12Shader.h:119
uint32 ShaderBindingLayoutHash
Definition D3D12Shader.h:76
bool InitCommon(TArrayView< const uint8 > InCode)
TArray< uint8 > Code
Definition D3D12Shader.h:71
FORCEINLINE bool UsesDiagnosticBuffer() const
Definition D3D12Shader.h:113
static UE_FORCEINLINE_HINT void * Memcpy(void *Dest, const void *Src, SIZE_T Count)
Definition UnrealMemory.h:160
Definition ShaderCore.h:773
EShaderResourceUsageFlags UsageFlags
Definition ShaderCore.h:777
Definition D3D12Shader.h:54
uint64 Hash[2]
Definition D3D12Shader.h:55
bool operator!=(const ShaderBytecodeHash &b) const
Definition D3D12Shader.h:62
bool operator==(const ShaderBytecodeHash &b) const
Definition D3D12Shader.h:57
FD3D12AmplificationShader TConcreteType
Definition D3D12Shader.h:208
FD3D12ComputeShader TConcreteType
Definition D3D12Shader.h:223
FD3D12GeometryShader TConcreteType
Definition D3D12Shader.h:213
FD3D12MeshShader TConcreteType
Definition D3D12Shader.h:203
FD3D12PixelShader TConcreteType
Definition D3D12Shader.h:218
FD3D12VertexDeclaration TConcreteType
Definition D3D12Shader.h:233
FD3D12VertexShader TConcreteType
Definition D3D12Shader.h:198
FD3D12WorkGraphShader TConcreteType
Definition D3D12Shader.h:228
Definition D3D12RHICommon.h:374
Definition UnrealTypeTraits.h:335
Definition UnrealTypeTraits.h:347