164 void SetViewport(
float MinX,
float MinY,
float MinZ,
float MaxX,
float MaxY,
float MaxZ)
250 template<
bool bDynamic>
#define check(expr)
Definition AssertionMacros.h:314
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EShaderFrequency
Definition RHIDefinitions.h:202
@ MaxVertexElementCount
Definition RHIDefinitions.h:276
EPrimitiveType
Definition RHIDefinitions.h:822
@ PT_Num
Definition RHIDefinitions.h:846
uint32 Offset
Definition VulkanMemory.cpp:4033
FRHIComputeShader * GetComputeShader() const
Definition RHIResources.h:1092
Definition VulkanCommandBuffer.h:43
Definition VulkanContext.h:241
void SetUniformBuffer(uint8 DescriptorSet, uint32 BindingIndex, const FVulkanUniformBuffer *UniformBuffer)
Definition VulkanPipelineState.h:98
void SetSamplerState(uint8 DescriptorSet, uint32 BindingIndex, const FVulkanSamplerState *Sampler)
Definition VulkanPipelineState.h:84
void SetTexture(uint8 DescriptorSet, uint32 BindingIndex, const FVulkanTexture *Texture, VkImageLayout Layout)
Definition VulkanPipelineState.h:68
Definition VulkanPipelineState.h:182
void Reset()
Definition VulkanPipelineState.h:190
void SetPackedGlobalShaderParameter(uint32 BufferIndex, uint32 ByteOffset, uint32 NumBytes, const void *NewValue)
Definition VulkanPipelineState.h:196
FVulkanComputePipeline * ComputePipeline
Definition VulkanPipelineState.h:229
Definition VulkanPipeline.h:705
Definition VulkanDevice.h:279
Definition VulkanFramebuffer.h:8
Definition VulkanPipelineState.h:239
void SetPackedGlobalShaderParameter(uint8 Stage, uint32 BufferIndex, uint32 ByteOffset, uint32 NumBytes, const void *NewValue)
Definition VulkanPipelineState.h:247
Definition VulkanPipeline.h:735
const FVulkanShader * GetVulkanShader(EShaderFrequency Frequency) const
Definition VulkanPipeline.h:761
const uint64 GetShaderKey(EShaderFrequency Frequency) const
Definition VulkanPipeline.h:755
void Bind(VkCommandBuffer CmdBuffer)
Definition VulkanPipeline.h:750
Definition VulkanPendingState.h:21
void NotifyDeletedPipeline(FVulkanComputePipeline *Pipeline)
Definition VulkanPendingState.h:103
void SetSamplerStateForStage(uint32 SamplerIndex, FVulkanSamplerState *Sampler)
Definition VulkanPendingState.h:76
~FVulkanPendingComputeState()
Definition VulkanPendingState.cpp:321
void PrepareForDispatch(FVulkanCommandListContext &Context)
Definition VulkanPendingState.cpp:343
void SetSRVForUBResource(uint32 DescriptorSet, uint32 BindingIndex, FVulkanShaderResourceView *SRV)
Definition VulkanPendingState.cpp:330
FVulkanComputePipeline * CurrentPipeline
Definition VulkanPendingState.h:109
FVulkanDevice & Device
Definition VulkanPendingState.h:114
void Reset()
Definition VulkanPendingState.h:30
void SetSRVForStage(uint32 SRVIndex, FVulkanShaderResourceView *SRV)
Definition VulkanPendingState.h:88
const FVulkanComputeShader * GetCurrentShader() const
Definition VulkanPendingState.h:59
TMap< FVulkanComputePipeline *, FVulkanComputePipelineDescriptorState * > PipelineStates
Definition VulkanPendingState.h:112
void SetComputePipeline(FVulkanComputePipeline *InComputePipeline)
Definition VulkanPendingState.h:36
void SetTextureForUBResource(int32 DescriptorSet, uint32 BindingIndex, const FVulkanTexture *Texture, VkImageLayout Layout)
Definition VulkanPendingState.h:81
void SetTextureForStage(uint32 TextureIndex, const FVulkanTexture *Texture, VkImageLayout Layout)
Definition VulkanPendingState.h:71
void SetUAVForStage(uint32 UAVIndex, FVulkanUnorderedAccessView *UAV)
Definition VulkanPendingState.h:66
void SetPackedGlobalShaderParameter(uint32 BufferIndex, uint32 Offset, uint32 NumBytes, const void *NewValue)
Definition VulkanPendingState.h:93
FVulkanPendingComputeState(FVulkanDevice &InDevice)
Definition VulkanPendingState.h:23
void SetUAVForUBResource(uint32 DescriptorSet, uint32 BindingIndex, FVulkanUnorderedAccessView *UAV)
Definition VulkanPendingState.cpp:336
void SetSamplerStateForUBResource(uint32 DescriptorSet, uint32 BindingIndex, FVulkanSamplerState *Sampler)
Definition VulkanPendingState.h:98
FVulkanComputePipelineDescriptorState * CurrentState
Definition VulkanPendingState.h:110
Definition VulkanPendingState.h:121
void SetScissorRect(uint32 MinX, uint32 MinY, uint32 Width, uint32 Height)
Definition VulkanPendingState.h:218
bool bDirtyDynamicVertexInput
Definition VulkanPendingState.h:332
const FVulkanShader * GetCurrentShader(EShaderFrequency Frequency) const
Definition VulkanPendingState.h:159
bool bNeedToClear
Definition VulkanPendingState.h:312
FVulkanGraphicsPipelineState * CurrentPipeline
Definition VulkanPendingState.h:314
void SetMultiViewport(const TArrayView< VkViewport > &InViewports)
Definition VulkanPendingState.h:187
void SetSamplerStateForStage(ShaderStage::EStage Stage, uint32 ParameterIndex, FVulkanSamplerState *Sampler)
Definition VulkanPendingState.h:270
void SetPackedGlobalShaderParameter(ShaderStage::EStage Stage, uint32 BufferIndex, uint32 Offset, uint32 NumBytes, const void *NewValue)
Definition VulkanPendingState.h:280
FVulkanPendingGfxState(FVulkanDevice &InDevice)
Definition VulkanPendingState.h:123
EPrimitiveType PrimitiveType
Definition VulkanPendingState.h:308
const uint64 GetCurrentShaderKey(ShaderStage::EStage Stage) const
Definition VulkanPendingState.h:154
void Bind(VkCommandBuffer CmdBuffer)
Definition VulkanPendingState.h:235
TArray< VkRect2D, TInlineAllocator< 2 > > Scissors
Definition VulkanPendingState.h:306
void SetTextureForStage(ShaderStage::EStage Stage, uint32 ParameterIndex, const FVulkanTexture *Texture, VkImageLayout Layout)
Definition VulkanPendingState.h:240
void SetSRVForStage(ShaderStage::EStage Stage, uint32 ParameterIndex, FVulkanShaderResourceView *SRV)
Definition VulkanPendingState.h:265
bool SetGfxPipeline(FVulkanGraphicsPipelineState *InGfxPipeline, bool bForceReset)
Definition VulkanPendingState.cpp:1140
TMap< FVulkanGraphicsPipelineState *, FVulkanGraphicsPipelineDescriptorState * > PipelineStates
Definition VulkanPendingState.h:317
void Reset()
Definition VulkanPendingState.h:131
void SetSamplerStateForUBResource(uint32 DescriptorSet, uint32 BindingIndex, FVulkanSamplerState *Sampler)
Definition VulkanPendingState.h:275
void PrepareForDraw(FVulkanCommandListContext &Context)
Definition VulkanPendingState.cpp:385
void SetViewport(float MinX, float MinY, float MinZ, float MaxX, float MaxY, float MaxZ)
Definition VulkanPendingState.h:164
bool bDirtyVertexStreams
Definition VulkanPendingState.h:331
void SetUAVForUBResource(uint8 DescriptorSet, uint32 BindingIndex, FVulkanUnorderedAccessView *UAV)
Definition VulkanPendingState.cpp:837
void SetSRVForUBResource(uint8 DescriptorSet, uint32 BindingIndex, FVulkanShaderResourceView *SRV)
Definition VulkanPendingState.cpp:831
FVulkanGraphicsPipelineDescriptorState * CurrentState
Definition VulkanPendingState.h:315
void NotifyDeletedPipeline(FVulkanGraphicsPipelineState *Pipeline)
Definition VulkanPendingState.h:299
FVulkanDevice & Device
Definition VulkanPendingState.h:336
void UpdateDynamicStates(FVulkanCommandBuffer &CommandBuffer)
Definition VulkanPendingState.cpp:498
void UpdateInputAttachments(FVulkanFramebuffer *Framebuffer)
Definition VulkanPendingState.cpp:793
const uint64 GetCurrentShaderKey(EShaderFrequency Frequency) const
Definition VulkanPendingState.h:149
bool bScissorEnable
Definition VulkanPendingState.h:310
uint32 StencilRef
Definition VulkanPendingState.h:309
void SetStreamSource(uint32 StreamIndex, VkBuffer VertexBuffer, uint32 Offset)
Definition VulkanPendingState.h:228
void SetStencilRef(uint32 InStencilRef)
Definition VulkanPendingState.h:291
void SetTextureForUBResource(uint8 DescriptorSet, uint32 BindingIndex, const FVulkanTexture *Texture, VkImageLayout Layout)
Definition VulkanPendingState.h:245
TArray< VkViewport, TInlineAllocator< 2 > > Viewports
Definition VulkanPendingState.h:305
void SetUniformBuffer(uint8 DescriptorSet, uint32 BindingIndex, const FVulkanUniformBuffer *UniformBuffer)
Definition VulkanPendingState.h:251
void SetScissor(bool bInEnable, uint32 MinX, uint32 MinY, uint32 MaxX, uint32 MaxY)
Definition VulkanPendingState.h:203
~FVulkanPendingGfxState()
Definition VulkanPendingState.cpp:374
FVertexStream PendingStreams[MaxVertexElementCount]
Definition VulkanPendingState.h:330
void SetUAVForStage(ShaderStage::EStage Stage, uint32 ParameterIndex, FVulkanUnorderedAccessView *UAV)
Definition VulkanPendingState.h:258
Definition VulkanState.h:17
Definition VulkanResources.h:1020
Definition VulkanResources.h:108
Definition VulkanResources.h:604
Definition VulkanResources.h:1003
Definition ArrayView.h:139
Definition UnrealString.h.inl:34
Definition VulkanResources.h:257
EShaderFrequency GetFrequencyForGfxStage(EStage Stage)
Definition VulkanCommon.h:84
EStage
Definition VulkanCommon.h:35
@ Compute
Definition VulkanCommon.h:51
Definition VulkanPendingState.h:320
uint32 BufferOffset
Definition VulkanPendingState.h:328
VkBuffer Stream
Definition VulkanPendingState.h:327
FVertexStream()
Definition VulkanPendingState.h:321