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

[dxvk] Use new layout transition helper in uploadImageHw

Allows us to get rid of a barrier set.
This commit is contained in:
Philip Rebohle 2024-10-10 17:28:28 +02:00 committed by Philip Rebohle
parent 8955d2a285
commit 1e8631189c
2 changed files with 3 additions and 10 deletions

View File

@ -11,7 +11,6 @@ namespace dxvk {
: m_device (device),
m_type (type),
m_common (&device->m_objects),
m_sdmaAcquires(DxvkCmdBuffer::SdmaBuffer),
m_sdmaBarriers(DxvkCmdBuffer::SdmaBuffer),
m_initAcquires(DxvkCmdBuffer::InitBuffer),
m_initBarriers(DxvkCmdBuffer::InitBuffer),
@ -4729,14 +4728,9 @@ namespace dxvk {
// Initialize all subresources of the image at once
VkImageLayout transferLayout = image->pickLayout(VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL);
m_sdmaAcquires.accessImage(image,
image->getAvailableSubresources(),
VK_IMAGE_LAYOUT_UNDEFINED, 0, 0,
transferLayout,
VK_PIPELINE_STAGE_TRANSFER_BIT,
VK_ACCESS_TRANSFER_WRITE_BIT);
m_sdmaAcquires.recordCommands(m_cmd);
addImageInitTransition(*image, image->getAvailableSubresources(),
transferLayout, VK_PIPELINE_STAGE_2_TRANSFER_BIT, VK_ACCESS_2_TRANSFER_WRITE_BIT);
flushImageLayoutTransitions(DxvkCmdBuffer::SdmaBuffer);
// Copy image data, one mip at a time
VkDeviceSize dataOffset = sourceOffset;

View File

@ -1406,7 +1406,6 @@ namespace dxvk {
Rc<DxvkDescriptorPool> m_descriptorPool;
Rc<DxvkDescriptorManager> m_descriptorManager;
DxvkBarrierSet m_sdmaAcquires;
DxvkBarrierSet m_sdmaBarriers;
DxvkBarrierSet m_initAcquires;
DxvkBarrierSet m_initBarriers;