jpbruyere / vkvg

Vulkan 2D graphics library
https://jpbruyere.github.io/vkvg/
MIT License
773 stars 33 forks source link

Fix validation error with deferred resolve #133

Closed chrismile closed 1 year ago

chrismile commented 1 year ago

This PR fixes an error the validation layer reports when using deferredResolve = true.

Validation layer: Validation Error: [ VUID-vkCmdPipelineBarrier-dstAccessMask-02816 ] Object 0: handle = 0x555556ecd1e0, name = vkvgSurfCmd, type = VK_OBJECT_TYPE_COMMAND_BUFFER; | MessageID = 0x69c8467d | vkCmdPipelineBarrier(): .pImageMemoryBarriers[0].dstAccessMask bit VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT is not supported by stage mask (VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT). The Vulkan spec states: The dstAccessMask member of each element of pMemoryBarriers must only include access flags that are supported by one or more of the pipeline stages in dstStageMask, as specified in the table of supported access types (https://vulkan.lunarg.com/doc/view/1.3.231.0/linux/1.3-extensions/vkspec.html#VUID-vkCmdPipelineBarrier-dstAccessMask-02816)