From b51d7a3cc03aeef03e965b7f489ab97ad9190601 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Wed, 6 Jul 2022 16:38:32 +0200 Subject: [PATCH] [dxvk] Update descriptor sets after binding pipeline --- src/dxvk/dxvk_context.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/dxvk/dxvk_context.cpp b/src/dxvk/dxvk_context.cpp index da1cf882b..f00fbb57c 100644 --- a/src/dxvk/dxvk_context.cpp +++ b/src/dxvk/dxvk_context.cpp @@ -5165,14 +5165,14 @@ namespace dxvk { return false; } - if (m_descriptorState.hasDirtyComputeSets()) - this->updateComputeShaderResources(); - if (m_flags.test(DxvkContextFlag::CpDirtyPipelineState)) { if (unlikely(!this->updateComputePipelineState())) return false; } + if (m_descriptorState.hasDirtyComputeSets()) + this->updateComputeShaderResources(); + if (m_flags.test(DxvkContextFlag::DirtyPushConstants)) this->updatePushConstants(); @@ -5207,9 +5207,6 @@ namespace dxvk { if (m_flags.test(DxvkContextFlag::GpDirtyVertexBuffers)) this->updateVertexBufferBindings(); - if (m_descriptorState.hasDirtyGraphicsSets()) - this->updateGraphicsShaderResources(); - if (m_flags.test(DxvkContextFlag::GpDirtyPipelineState)) { DxvkGlobalPipelineBarrier barrier = { }; @@ -5227,6 +5224,9 @@ namespace dxvk { return false; } + if (m_descriptorState.hasDirtyGraphicsSets()) + this->updateGraphicsShaderResources(); + if (m_state.gp.flags.test(DxvkGraphicsPipelineFlag::HasTransformFeedback)) this->updateTransformFeedbackState();