Reputation: 13
In my Vulkan backend implementation I currently check the supported usage flags for the Swapchain and then proceed to either use copy commands or a fall-back render pass to draw to the back buffer from an intermediary Render Target. I wanted to know whether this check is required or is it safe to assume that the Swapchain Images allow usage as a Transfer Destination on typical Desktop hardware. Also, if anyone knows about Vulkan implementations that do not allow Copying to Swapchain Images, I'd appreciate it if you could share. This is mostly for the sake of curiosity rather than solving a problem.
Upvotes: 1
Views: 530
Reputation: 6766
You can look at the Vulkan Hardware Database.
I couldn't find anywhere which summarized the data, but if you click on a device from the list then click onto the surface
tab, then on the surface properties
tab you can see supportedUsageFlags
in the table and look for TRANSFER_DST_BIT
.
I only looked at a few and they all had TRANSFER_DST_BIT
present. I believe the database and code for the viewer are open source, so perhaps you can find a better way to mine the particular information you're after.
Upvotes: 1