1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-01-31 14:52:11 +01:00

[dxvk] Use new barrier helpers in ensureImageCompatibility

This commit is contained in:
Philip Rebohle 2024-10-12 01:26:24 +02:00 committed by Philip Rebohle
parent 33b146467a
commit 7edfad763a

View File

@ -1488,8 +1488,7 @@ namespace dxvk {
this->spillRenderPass(true); this->spillRenderPass(true);
this->prepareImage(image, image->getAvailableSubresources()); this->prepareImage(image, image->getAvailableSubresources());
if (m_execBarriers.isImageDirty(image, image->getAvailableSubresources(), DxvkAccess::Write)) flushPendingAccesses(*image, image->getAvailableSubresources(), DxvkAccess::Write);
m_execBarriers.recordCommands(m_cmd);
if (isUsageAndFormatCompatible) { if (isUsageAndFormatCompatible) {
// Emit a barrier. If used in internal passes, this function // Emit a barrier. If used in internal passes, this function
@ -1499,7 +1498,7 @@ namespace dxvk {
image->assignResourceWithUsage(image->getAllocation(), usageInfo); image->assignResourceWithUsage(image->getAllocation(), usageInfo);
m_execBarriers.accessImage(image, image->getAvailableSubresources(), accessImage(DxvkCmdBuffer::ExecBuffer, *image, image->getAvailableSubresources(),
oldLayout, image->info().stages, image->info().access, oldLayout, image->info().stages, image->info().access,
newLayout, image->info().stages, image->info().access); newLayout, image->info().stages, image->info().access);