An application can copy buffer and image data using several methods
depending on the type of data transfer.
Data can be copied between buffer objects with vkCmdCopyBuffer and a
portion of an image can be copied to another image with
vkCmdCopyImage.
Image data can also be copied to and from buffer memory using
vkCmdCopyImageToBuffer and vkCmdCopyBufferToImage.
Image data can be blitted (with or without scaling and filtering) with
vkCmdBlitImage.
Multisampled images can be resolved to a non-multisampled image with
vkCmdResolveImage.