grvk
grvk copied to clipboard
Implement present from compute
trafficstars
BF4 wants to use this.
We use vkCmdBlitImage in the present path to convert the presentable image format to the swapchain format: games use R8G8B8A8 presentable images and X11 only allows B8G8R8A8 swapchains. Blits require a graphics queue.
Three ways forward:
- Assume Wayland (not realistic today)
- Use a compute shader to copy presentable image -> swapchain with swizzle
- Skip present copy entirely