[dxvk] Support feedback loop layout in pickLayout

This commit is contained in:
Joshua Ashton 2022-08-05 23:15:18 +00:00 committed by Joshie
parent 9cf5c648d3
commit 49b76fdd07
1 changed files with 7 additions and 0 deletions

View File

@ -251,6 +251,13 @@ namespace dxvk {
* \returns A compatible image layout
*/
VkImageLayout pickLayout(VkImageLayout layout) const {
if (unlikely(m_info.layout == VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT)) {
if (layout != VK_IMAGE_LAYOUT_GENERAL
&& layout != VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
&& layout != VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL)
return VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT;
}
return m_info.layout == VK_IMAGE_LAYOUT_GENERAL
? VK_IMAGE_LAYOUT_GENERAL : layout;
}