Parcourir la source

Vulkan: Update current layout for FB attachments after render-pass ends, to reflect automatic layout transitions performed by sub-pass dependencies

BearishSun il y a 9 ans
Parent
commit
6d2ccd4411
1 fichiers modifiés avec 10 ajouts et 0 suppressions
  1. 10 0
      Source/BansheeVulkanRenderAPI/Source/BsVulkanCommandBuffer.cpp

+ 10 - 0
Source/BansheeVulkanRenderAPI/Source/BsVulkanCommandBuffer.cpp

@@ -337,6 +337,16 @@ namespace bs
 
 		mQueuedEvents.clear();
 
+		// Update any layout transitions that were performed by subpass dependencies
+		for (auto& entry : mImages)
+		{
+			UINT32 imageInfoIdx = entry.second;
+			ImageInfo& imageInfo = mImageInfos[imageInfoIdx];
+
+			imageInfo.currentLayout = imageInfo.finalLayout;
+			imageInfo.requiredLayout = imageInfo.finalLayout;
+		}
+
 		mState = State::Recording;
 	}