UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FD3D12StateCache Class Referencefinal

#include <D3D12StateCachePrivate.h>

+ Inheritance diagram for FD3D12StateCache:

Public Member Functions

FD3D12DescriptorCacheGetDescriptorCache ()
 
FD3D12GraphicsPipelineStateGetGraphicsPipelineState () const
 
FD3D12ComputePipelineStateGetComputePipelineState () const
 
EPrimitiveType GetGraphicsPipelinePrimitiveType () const
 
uint32 GetVertexCount (uint32 NumPrimitives)
 
void ClearSRVs ()
 
void ClearResourceViewCaches (EShaderFrequency ShaderFrequency, FD3D12ResourceLocation *&ResourceLocation, EShaderParameterTypeMask ShaderParameterTypeMask)
 
void SetShaderResourceView (EShaderFrequency ShaderFrequency, FD3D12ShaderResourceView *SRV, uint32 ResourceIndex)
 
void SetScissorRects (uint32 Count, const D3D12_RECT *const ScissorRects)
 
void SetScissorRect (const D3D12_RECT &ScissorRect)
 
D3D12_STATE_CACHE_INLINE const D3D12_RECTGetScissorRect (int32 Index=0) const
 
void SetViewport (const D3D12_VIEWPORT &Viewport)
 
void SetViewports (uint32 Count, const D3D12_VIEWPORT *const Viewports)
 
D3D12_STATE_CACHE_INLINE uint32 GetNumViewports () const
 
D3D12_STATE_CACHE_INLINE const D3D12_VIEWPORTGetViewport (int32 Index=0) const
 
D3D12_STATE_CACHE_INLINE void GetViewports (uint32 *Count, D3D12_VIEWPORT *Viewports) const
 
D3D12_STATE_CACHE_INLINE void SetSamplerState (EShaderFrequency ShaderFrequency, FD3D12SamplerState *SamplerState, uint32 SamplerIndex)
 
D3D12_STATE_CACHE_INLINE void SetConstantsFromUniformBuffer (EShaderFrequency ShaderFrequency, uint32 SlotIndex, FD3D12UniformBuffer *UniformBuffer)
 
D3D12_STATE_CACHE_INLINE void SetConstantBuffer (EShaderFrequency ShaderFrequency, FD3D12ConstantBuffer &Buffer, bool bDiscardSharedConstants)
 
void SetBlendFactor (const float BlendFactor[4])
 
void SetStencilRef (uint32 StencilRef)
 
FRHIShaderGetShader (EShaderFrequency InFrequency)
 
void SetNewShaderData (EShaderFrequency InFrequency, const FD3D12ShaderData *InShaderData)
 
void SetGraphicsPipelineState (FD3D12GraphicsPipelineState *GraphicsPipelineState)
 
void SetComputePipelineState (FD3D12ComputePipelineState *ComputePipelineState)
 
D3D12_STATE_CACHE_INLINE void SetStreamSource (FD3D12ResourceLocation *VertexBufferLocation, uint32 StreamIndex, uint32 Stride, uint32 Offset)
 
D3D12_STATE_CACHE_INLINE void SetStreamSource (FD3D12ResourceLocation *VertexBufferLocation, uint32 StreamIndex, uint32 Offset)
 
D3D12_STATE_CACHE_INLINE void ClearVertexBuffer (const FD3D12ResourceLocation *VertexBufferLocation)
 
D3D12_STATE_CACHE_INLINE void SetIndexBuffer (const FD3D12ResourceLocation &IndexBufferLocation, DXGI_FORMAT Format, uint32 Offset)
 
 FD3D12StateCache (FD3D12CommandContext &CmdContext, FRHIGPUMask Node)
 
 ~FD3D12StateCache ()=default
 
void ApplyState (ERHIPipeline HardwarePipe, ED3D12PipelineType PipelineType)
 
void ApplySamplerTables (const FD3D12RootSignature *pRootSignature, uint32 StartStage, uint32 EndStage)
 
void ApplyResourceTables (const FD3D12RootSignature *pRootSignature, uint32 StartStage, uint32 EndStage)
 
void ApplyBindlessResources (const FD3D12RootSignature *pRootSignature, uint32 StartStage, uint32 EndStage)
 
void ApplyConstants (const FD3D12RootSignature *pRootSignature, uint32 StartStage, uint32 EndStage)
 
void DirtyStateForNewCommandList ()
 
void DirtyState ()
 
void DirtyViewDescriptorTables ()
 
void DirtySamplerDescriptorTables ()
 
bool AssertResourceStates (ED3D12PipelineType PipelineType)
 
void SetRenderTargets (uint32 NumSimultaneousRenderTargets, FD3D12RenderTargetView **RTArray, FD3D12DepthStencilView *DSTarget)
 
D3D12_STATE_CACHE_INLINE void GetRenderTargets (FD3D12RenderTargetView **RTArray, uint32 *NumSimultaneousRTs, FD3D12DepthStencilView **DepthStencilTarget)
 
void SetRootConstants (const FUint32Vector4 &Constants)
 
void SetUAV (EShaderFrequency ShaderStage, uint32 SlotIndex, FD3D12UnorderedAccessView *UAV, uint32 InitialCount=-1)
 
void ClearUAVs (EShaderFrequency ShaderStage)
 
void SetDepthBounds (float MinDepth, float MaxDepth)
 
void SetShadingRate (EVRSShadingRate ShadingRate, EVRSRateCombiner PerPrimitiveCombiner, EVRSRateCombiner ScreenSpaceCombiner)
 
void SetShadingRateImage (FD3D12Resource *ShadingRateImage)
 
void SetComputeBudget (EAsyncComputeBudget ComputeBudget)
 
void FlushComputeShaderCache (bool bForce=false)
 
void ClearState ()
 
void ForceSetComputeRootSignature ()
 
void ForceSetGraphicsRootSignature ()
 
- Public Member Functions inherited from FD3D12DeviceChild
 FD3D12DeviceChild (FD3D12Device *InParent=nullptr)
 
FORCEINLINE FD3D12DeviceGetParentDevice () const
 
FD3D12DeviceGetParentDevice_Unsafe () const
 
- Public Member Functions inherited from FD3D12SingleNodeGPUObject
 FD3D12SingleNodeGPUObject (FRHIGPUMask GPUMask)
 
SGPU_CONSTEXPR uint32 GetGPUIndex () const
 
- Public Member Functions inherited from FD3D12GPUObject
 FD3D12GPUObject (FRHIGPUMask InGPUMask, FRHIGPUMask InVisibiltyMask)
 
SGPU_CONSTEXPR FRHIGPUMask GetGPUMask () const
 
SGPU_CONSTEXPR FRHIGPUMask GetVisibilityMask () const
 

Protected Member Functions

void InternalSetIndexBuffer (FD3D12Resource *Resource)
 
void InternalSetStreamSource (FD3D12ResourceLocation *VertexBufferLocation, uint32 StreamIndex, uint32 Stride, uint32 Offset)
 
bool InternalSetDescriptorHeaps (bool bBindless)
 
bool InternalSetRootSignature (ED3D12PipelineType InPipelineType, const FD3D12RootSignature *InRootSignature, bool bForce)
 
void InternalSetPipelineState (FD3D12PipelineState *InPipelineState)
 

Protected Attributes

FD3D12CommandContextCmdContext
 
bool bNeedSetVB = true
 
bool bNeedSetRTs = true
 
bool bNeedSetViewports = true
 
bool bNeedSetScissorRects = true
 
bool bNeedSetPrimitiveTopology = true
 
bool bNeedSetBlendFactor = true
 
bool bNeedSetStencilRef = true
 
bool bNeedSetDepthBounds = true
 
bool bNeedSetShadingRate = true
 
bool bNeedSetShadingRateImage = true
 
bool bSRVSCleared = true
 
D3D12_RESOURCE_BINDING_TIER ResourceBindingTier
 
struct { 
 
   struct FGraphicsState
 
      TRefCountPtr< FD3D12GraphicsPipelineState >   CurrentPipelineStateObject = nullptr 
 
      bool   bNeedSetRootSignature 
 
      uint32   CurrentReferenceStencil = D3D12_DEFAULT_STENCIL_REFERENCE 
 
      float   CurrentBlendFactor [4] 
 
      uint32   CurrentNumberOfViewports = 0 
 
      D3D12_VIEWPORT   CurrentViewport [D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE] = {} 
 
      FD3D12VertexBufferCache   VBCache = {} 
 
      FD3D12IndexBufferCache   IBCache = {} 
 
      EPrimitiveType   CurrentPrimitiveType = PT_Num 
 
      D3D_PRIMITIVE_TOPOLOGY   CurrentPrimitiveTopology = D3D_PRIMITIVE_TOPOLOGY_UNDEFINED 
 
      uint32   PrimitiveTypeFactor 
 
      uint32   PrimitiveTypeOffset 
 
      D3D12_RECT   CurrentScissorRects [D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE] = {} 
 
      uint32   CurrentNumberOfScissorRects = 0 
 
      TStaticArray< uint16, MaxVertexElementCount >   StreamStrides 
 
      FD3D12RenderTargetView *   RenderTargetArray [D3D12_SIMULTANEOUS_RENDER_TARGET_COUNT] = {} 
 
      uint32   CurrentNumberOfRenderTargets = 0 
 
      FD3D12DepthStencilView *   CurrentDepthStencilTarget = nullptr 
 
      float   MinDepth = 0.0f 
 
      float   MaxDepth = 1.0f 
 
      EVRSShadingRate   DrawShadingRate = EVRSShadingRate::VRSSR_1x1 
 
      TStaticArray< EVRSRateCombiner, ED3D12VRSCombinerStages::Num >   Combiners 
 
      FD3D12Resource *   ShadingRateImage = nullptr 
 
   }   Graphics = {} 
 
   struct { 
 
      TRefCountPtr< FD3D12ComputePipelineState >   CurrentPipelineStateObject = nullptr 
 
      bool   bNeedSetRootSignature 
 
      EAsyncComputeBudget   ComputeBudget = EAsyncComputeBudget::EAll_4 
 
   }   Compute = {} 
 
   struct { 
 
      FD3D12ShaderResourceViewCache   SRVCache = {} 
 
      FD3D12ConstantBufferCache   CBVCache = {} 
 
      FD3D12UnorderedAccessViewCache   UAVCache = {} 
 
      FD3D12SamplerStateCache   SamplerCache = {} 
 
      ID3D12PipelineState *   CurrentPipelineStateObject = nullptr 
 
      bool   bNeedSetPSO 
 
      bool   bNeedSetRootConstants 
 
      FUint32Vector4   ShaderRootConstants = FUint32Vector4(0, 0, 0, 0) 
 
      uint32   CurrentShaderSamplerCounts [SF_NumStandardFrequencies] = {} 
 
      uint32   CurrentShaderSRVCounts [SF_NumStandardFrequencies] = {} 
 
      uint32   CurrentShaderCBCounts [SF_NumStandardFrequencies] = {} 
 
      uint32   CurrentShaderUAVCounts [SF_NumStandardFrequencies] = {} 
 
   }   Common = {} 
 
PipelineState = {} 
 
FD3D12DescriptorCache DescriptorCache
 
- Protected Attributes inherited from FD3D12DeviceChild
FD3D12DeviceParent
 

Friends

class FD3D12DynamicRHI
 

Constructor & Destructor Documentation

◆ FD3D12StateCache()

FD3D12StateCache::FD3D12StateCache ( FD3D12CommandContext CmdContext,
FRHIGPUMask  Node 
)

◆ ~FD3D12StateCache()

FD3D12StateCache::~FD3D12StateCache ( )
default

Member Function Documentation

◆ ApplyBindlessResources()

void FD3D12StateCache::ApplyBindlessResources ( const FD3D12RootSignature pRootSignature,
uint32  StartStage,
uint32  EndStage 
)

◆ ApplyConstants()

void FD3D12StateCache::ApplyConstants ( const FD3D12RootSignature pRootSignature,
uint32  StartStage,
uint32  EndStage 
)

◆ ApplyResourceTables()

void FD3D12StateCache::ApplyResourceTables ( const FD3D12RootSignature pRootSignature,
uint32  StartStage,
uint32  EndStage 
)

◆ ApplySamplerTables()

void FD3D12StateCache::ApplySamplerTables ( const FD3D12RootSignature pRootSignature,
uint32  StartStage,
uint32  EndStage 
)

◆ ApplyState()

void FD3D12StateCache::ApplyState ( ERHIPipeline  HardwarePipe,
ED3D12PipelineType  PipelineType 
)

◆ AssertResourceStates()

bool FD3D12StateCache::AssertResourceStates ( ED3D12PipelineType  PipelineType)

◆ ClearResourceViewCaches()

void FD3D12StateCache::ClearResourceViewCaches ( EShaderFrequency  ShaderFrequency,
FD3D12ResourceLocation *&  ResourceLocation,
EShaderParameterTypeMask  ShaderParameterTypeMask 
)

◆ ClearSRVs()

void FD3D12StateCache::ClearSRVs ( )

◆ ClearState()

void FD3D12StateCache::ClearState ( )

Clears all D3D12 State, setting all input/output resource slots, shaders, input layouts, predications, scissor rectangles, depth-stencil state, rasterizer state, blend state, sampler state, and viewports to NULL

◆ ClearUAVs()

void FD3D12StateCache::ClearUAVs ( EShaderFrequency  ShaderStage)

◆ ClearVertexBuffer()

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::ClearVertexBuffer ( const FD3D12ResourceLocation VertexBufferLocation)
inline

◆ DirtySamplerDescriptorTables()

void FD3D12StateCache::DirtySamplerDescriptorTables ( )

◆ DirtyState()

void FD3D12StateCache::DirtyState ( )

◆ DirtyStateForNewCommandList()

void FD3D12StateCache::DirtyStateForNewCommandList ( )

◆ DirtyViewDescriptorTables()

void FD3D12StateCache::DirtyViewDescriptorTables ( )

◆ FlushComputeShaderCache()

void FD3D12StateCache::FlushComputeShaderCache ( bool  bForce = false)

◆ ForceSetComputeRootSignature()

void FD3D12StateCache::ForceSetComputeRootSignature ( )
inline

◆ ForceSetGraphicsRootSignature()

void FD3D12StateCache::ForceSetGraphicsRootSignature ( )
inline

◆ GetComputePipelineState()

FD3D12ComputePipelineState * FD3D12StateCache::GetComputePipelineState ( ) const
inline

◆ GetDescriptorCache()

FD3D12DescriptorCache * FD3D12StateCache::GetDescriptorCache ( )
inline

◆ GetGraphicsPipelinePrimitiveType()

EPrimitiveType FD3D12StateCache::GetGraphicsPipelinePrimitiveType ( ) const
inline

◆ GetGraphicsPipelineState()

FD3D12GraphicsPipelineState * FD3D12StateCache::GetGraphicsPipelineState ( ) const
inline

◆ GetNumViewports()

D3D12_STATE_CACHE_INLINE uint32 FD3D12StateCache::GetNumViewports ( ) const
inline

◆ GetRenderTargets()

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::GetRenderTargets ( FD3D12RenderTargetView **  RTArray,
uint32 NumSimultaneousRTs,
FD3D12DepthStencilView **  DepthStencilTarget 
)
inline

◆ GetScissorRect()

D3D12_STATE_CACHE_INLINE const D3D12_RECT & FD3D12StateCache::GetScissorRect ( int32  Index = 0) const
inline

◆ GetShader()

FRHIShader * FD3D12StateCache::GetShader ( EShaderFrequency  InFrequency)
inline

◆ GetVertexCount()

uint32 FD3D12StateCache::GetVertexCount ( uint32  NumPrimitives)
inline

◆ GetViewport()

D3D12_STATE_CACHE_INLINE const D3D12_VIEWPORT & FD3D12StateCache::GetViewport ( int32  Index = 0) const
inline

◆ GetViewports()

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::GetViewports ( uint32 Count,
D3D12_VIEWPORT Viewports 
) const
inline

◆ InternalSetDescriptorHeaps()

bool FD3D12StateCache::InternalSetDescriptorHeaps ( bool  bBindless)
protected

◆ InternalSetIndexBuffer()

void FD3D12StateCache::InternalSetIndexBuffer ( FD3D12Resource Resource)
protected

◆ InternalSetPipelineState()

void FD3D12StateCache::InternalSetPipelineState ( FD3D12PipelineState InPipelineState)
protected

◆ InternalSetRootSignature()

bool FD3D12StateCache::InternalSetRootSignature ( ED3D12PipelineType  InPipelineType,
const FD3D12RootSignature InRootSignature,
bool  bForce 
)
protected

◆ InternalSetStreamSource()

void FD3D12StateCache::InternalSetStreamSource ( FD3D12ResourceLocation VertexBufferLocation,
uint32  StreamIndex,
uint32  Stride,
uint32  Offset 
)
protected

◆ SetBlendFactor()

void FD3D12StateCache::SetBlendFactor ( const float  BlendFactor[4])

◆ SetComputeBudget()

void FD3D12StateCache::SetComputeBudget ( EAsyncComputeBudget  ComputeBudget)
inline

◆ SetComputePipelineState()

void FD3D12StateCache::SetComputePipelineState ( FD3D12ComputePipelineState ComputePipelineState)

◆ SetConstantBuffer()

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::SetConstantBuffer ( EShaderFrequency  ShaderFrequency,
FD3D12ConstantBuffer Buffer,
bool  bDiscardSharedConstants 
)
inline

◆ SetConstantsFromUniformBuffer()

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::SetConstantsFromUniformBuffer ( EShaderFrequency  ShaderFrequency,
uint32  SlotIndex,
FD3D12UniformBuffer UniformBuffer 
)
inline

◆ SetDepthBounds()

void FD3D12StateCache::SetDepthBounds ( float  MinDepth,
float  MaxDepth 
)
inline

◆ SetGraphicsPipelineState()

void FD3D12StateCache::SetGraphicsPipelineState ( FD3D12GraphicsPipelineState GraphicsPipelineState)

◆ SetIndexBuffer()

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::SetIndexBuffer ( const FD3D12ResourceLocation IndexBufferLocation,
DXGI_FORMAT  Format,
uint32  Offset 
)
inline

◆ SetNewShaderData()

void FD3D12StateCache::SetNewShaderData ( EShaderFrequency  InFrequency,
const FD3D12ShaderData InShaderData 
)

◆ SetRenderTargets()

void FD3D12StateCache::SetRenderTargets ( uint32  NumSimultaneousRenderTargets,
FD3D12RenderTargetView **  RTArray,
FD3D12DepthStencilView DSTarget 
)

◆ SetRootConstants()

void FD3D12StateCache::SetRootConstants ( const FUint32Vector4 Constants)

◆ SetSamplerState()

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::SetSamplerState ( EShaderFrequency  ShaderFrequency,
FD3D12SamplerState SamplerState,
uint32  SamplerIndex 
)
inline

◆ SetScissorRect()

void FD3D12StateCache::SetScissorRect ( const D3D12_RECT ScissorRect)

◆ SetScissorRects()

void FD3D12StateCache::SetScissorRects ( uint32  Count,
const D3D12_RECT *const  ScissorRects 
)

◆ SetShaderResourceView()

void FD3D12StateCache::SetShaderResourceView ( EShaderFrequency  ShaderFrequency,
FD3D12ShaderResourceView SRV,
uint32  ResourceIndex 
)

◆ SetShadingRate()

void FD3D12StateCache::SetShadingRate ( EVRSShadingRate  ShadingRate,
EVRSRateCombiner  PerPrimitiveCombiner,
EVRSRateCombiner  ScreenSpaceCombiner 
)
inline

◆ SetShadingRateImage()

void FD3D12StateCache::SetShadingRateImage ( FD3D12Resource ShadingRateImage)
inline

◆ SetStencilRef()

void FD3D12StateCache::SetStencilRef ( uint32  StencilRef)

◆ SetStreamSource() [1/2]

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::SetStreamSource ( FD3D12ResourceLocation VertexBufferLocation,
uint32  StreamIndex,
uint32  Offset 
)
inline

◆ SetStreamSource() [2/2]

D3D12_STATE_CACHE_INLINE void FD3D12StateCache::SetStreamSource ( FD3D12ResourceLocation VertexBufferLocation,
uint32  StreamIndex,
uint32  Stride,
uint32  Offset 
)
inline

◆ SetUAV()

void FD3D12StateCache::SetUAV ( EShaderFrequency  ShaderStage,
uint32  SlotIndex,
FD3D12UnorderedAccessView UAV,
uint32  InitialCount = -1 
)

◆ SetViewport()

void FD3D12StateCache::SetViewport ( const D3D12_VIEWPORT Viewport)

◆ SetViewports()

void FD3D12StateCache::SetViewports ( uint32  Count,
const D3D12_VIEWPORT *const  Viewports 
)

Friends And Related Symbol Documentation

◆ FD3D12DynamicRHI

friend class FD3D12DynamicRHI
friend

Member Data Documentation

◆ bNeedSetBlendFactor

bool FD3D12StateCache::bNeedSetBlendFactor = true
protected

◆ bNeedSetDepthBounds

bool FD3D12StateCache::bNeedSetDepthBounds = true
protected

◆ bNeedSetPrimitiveTopology

bool FD3D12StateCache::bNeedSetPrimitiveTopology = true
protected

◆ bNeedSetPSO

bool FD3D12StateCache::bNeedSetPSO

◆ bNeedSetRootConstants

bool FD3D12StateCache::bNeedSetRootConstants

◆ bNeedSetRootSignature

bool FD3D12StateCache::bNeedSetRootSignature

◆ bNeedSetRTs

bool FD3D12StateCache::bNeedSetRTs = true
protected

◆ bNeedSetScissorRects

bool FD3D12StateCache::bNeedSetScissorRects = true
protected

◆ bNeedSetShadingRate

bool FD3D12StateCache::bNeedSetShadingRate = true
protected

◆ bNeedSetShadingRateImage

bool FD3D12StateCache::bNeedSetShadingRateImage = true
protected

◆ bNeedSetStencilRef

bool FD3D12StateCache::bNeedSetStencilRef = true
protected

◆ bNeedSetVB

bool FD3D12StateCache::bNeedSetVB = true
protected

◆ bNeedSetViewports

bool FD3D12StateCache::bNeedSetViewports = true
protected

◆ bSRVSCleared

bool FD3D12StateCache::bSRVSCleared = true
protected

◆ CBVCache

FD3D12ConstantBufferCache FD3D12StateCache::CBVCache = {}

◆ CmdContext

FD3D12CommandContext& FD3D12StateCache::CmdContext
protected

◆ Combiners

◆ [struct]

struct { ... } FD3D12StateCache::Common

◆ [struct]

struct { ... } FD3D12StateCache::Compute

◆ ComputeBudget

EAsyncComputeBudget FD3D12StateCache::ComputeBudget = EAsyncComputeBudget::EAll_4

◆ CurrentBlendFactor

float FD3D12StateCache::CurrentBlendFactor[4]
Initial value:
=
{
}
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127

◆ CurrentDepthStencilTarget

FD3D12DepthStencilView* FD3D12StateCache::CurrentDepthStencilTarget = nullptr

◆ CurrentNumberOfRenderTargets

uint32 FD3D12StateCache::CurrentNumberOfRenderTargets = 0

◆ CurrentNumberOfScissorRects

uint32 FD3D12StateCache::CurrentNumberOfScissorRects = 0

◆ CurrentNumberOfViewports

uint32 FD3D12StateCache::CurrentNumberOfViewports = 0

◆ CurrentPipelineStateObject [1/3]

TRefCountPtr<FD3D12GraphicsPipelineState> FD3D12StateCache::CurrentPipelineStateObject = nullptr

◆ CurrentPipelineStateObject [2/3]

TRefCountPtr<FD3D12ComputePipelineState> FD3D12StateCache::CurrentPipelineStateObject = nullptr

◆ CurrentPipelineStateObject [3/3]

ID3D12PipelineState* FD3D12StateCache::CurrentPipelineStateObject = nullptr

◆ CurrentPrimitiveTopology

D3D_PRIMITIVE_TOPOLOGY FD3D12StateCache::CurrentPrimitiveTopology = D3D_PRIMITIVE_TOPOLOGY_UNDEFINED

◆ CurrentPrimitiveType

EPrimitiveType FD3D12StateCache::CurrentPrimitiveType = PT_Num

◆ CurrentReferenceStencil

uint32 FD3D12StateCache::CurrentReferenceStencil = D3D12_DEFAULT_STENCIL_REFERENCE

◆ CurrentScissorRects

D3D12_RECT FD3D12StateCache::CurrentScissorRects[D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE] = {}

◆ CurrentShaderCBCounts

uint32 FD3D12StateCache::CurrentShaderCBCounts[SF_NumStandardFrequencies] = {}

◆ CurrentShaderSamplerCounts

uint32 FD3D12StateCache::CurrentShaderSamplerCounts[SF_NumStandardFrequencies] = {}

◆ CurrentShaderSRVCounts

uint32 FD3D12StateCache::CurrentShaderSRVCounts[SF_NumStandardFrequencies] = {}

◆ CurrentShaderUAVCounts

uint32 FD3D12StateCache::CurrentShaderUAVCounts[SF_NumStandardFrequencies] = {}

◆ CurrentViewport

◆ DescriptorCache

FD3D12DescriptorCache FD3D12StateCache::DescriptorCache
protected

◆ DrawShadingRate

EVRSShadingRate FD3D12StateCache::DrawShadingRate = EVRSShadingRate::VRSSR_1x1

◆ [struct]

struct { ... } ::FGraphicsState FD3D12StateCache::Graphics

◆ IBCache

FD3D12IndexBufferCache FD3D12StateCache::IBCache = {}

◆ MaxDepth

float FD3D12StateCache::MaxDepth = 1.0f

◆ MinDepth

float FD3D12StateCache::MinDepth = 0.0f

◆ [struct]

struct { ... } FD3D12StateCache::PipelineState

◆ PrimitiveTypeFactor

uint32 FD3D12StateCache::PrimitiveTypeFactor

◆ PrimitiveTypeOffset

uint32 FD3D12StateCache::PrimitiveTypeOffset

◆ RenderTargetArray

FD3D12RenderTargetView* FD3D12StateCache::RenderTargetArray[D3D12_SIMULTANEOUS_RENDER_TARGET_COUNT] = {}

◆ ResourceBindingTier

D3D12_RESOURCE_BINDING_TIER FD3D12StateCache::ResourceBindingTier
protected

◆ SamplerCache

FD3D12SamplerStateCache FD3D12StateCache::SamplerCache = {}

◆ ShaderRootConstants

FUint32Vector4 FD3D12StateCache::ShaderRootConstants = FUint32Vector4(0, 0, 0, 0)

◆ ShadingRateImage

FD3D12Resource* FD3D12StateCache::ShadingRateImage = nullptr

◆ SRVCache

FD3D12ShaderResourceViewCache FD3D12StateCache::SRVCache = {}

◆ StreamStrides

TStaticArray<uint16, MaxVertexElementCount> FD3D12StateCache::StreamStrides

◆ UAVCache

FD3D12UnorderedAccessViewCache FD3D12StateCache::UAVCache = {}

◆ VBCache

FD3D12VertexBufferCache FD3D12StateCache::VBCache = {}

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