mirror of
https://github.com/cemu-project/Cemu.git
synced 2025-07-07 23:41:18 +12:00
Vulkan: mark descriptor samplers on draw
This commit is contained in:
parent
7ce6ab7862
commit
45afeaa67b
1 changed files with 9 additions and 0 deletions
|
@ -1539,6 +1539,12 @@ void VulkanRenderer::draw_execute(uint32 baseVertex, uint32 baseInstance, uint32
|
||||||
draw_updateVkBlendConstants();
|
draw_updateVkBlendConstants();
|
||||||
|
|
||||||
// update descriptor sets
|
// update descriptor sets
|
||||||
|
auto markSamplers = [this](VkDescriptorSetInfo* info) {
|
||||||
|
if(!info)
|
||||||
|
return;
|
||||||
|
for(auto& sampler : info->m_vkObjSamplers)
|
||||||
|
sampler->flagForCurrentCommandBuffer();
|
||||||
|
};
|
||||||
uint32_t dynamicOffsets[17 * 2];
|
uint32_t dynamicOffsets[17 * 2];
|
||||||
if (vertexDS && pixelDS)
|
if (vertexDS && pixelDS)
|
||||||
{
|
{
|
||||||
|
@ -1585,6 +1591,9 @@ void VulkanRenderer::draw_execute(uint32 baseVertex, uint32 baseInstance, uint32
|
||||||
vkObjPipeline->pipeline_layout, 2, 1, &geometryDS->m_vkObjDescriptorSet->descriptorSet, numDynOffsets,
|
vkObjPipeline->pipeline_layout, 2, 1, &geometryDS->m_vkObjDescriptorSet->descriptorSet, numDynOffsets,
|
||||||
dynamicOffsets);
|
dynamicOffsets);
|
||||||
}
|
}
|
||||||
|
markSamplers(vertexDS);
|
||||||
|
markSamplers(pixelDS);
|
||||||
|
markSamplers(geometryDS);
|
||||||
|
|
||||||
// draw
|
// draw
|
||||||
if (hostIndexType != INDEX_TYPE::NONE)
|
if (hostIndexType != INDEX_TYPE::NONE)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue