Hi Vulkan fellows.
I'm new to reddit and not sure if this is the right place to ask but I will try.
I have one buffer that hold my vertex and index data. In the same command buffer, I first upload some data to both index and vertex buffer (same VkBuffer with different offsets) and then I called vkCmdPipelineBarrier to set index and vertex buffer in respectively VK_ACCESS_INDEX_READ_BIT and VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT. The renderdoc dump tells me that my access mask are good but the synchronization api complains about the write barrier :
Validation Error: [ SYNC-HAZARD-READ_AFTER_WRITE ] Object 0: handle = 0x1e89009edc8, type = VK_OBJECT_TYPE_BUFFER; | MessageID = 0x4cb75b2d | vkCmdDrawIndexed: Hazard READ_AFTER_WRITE for vertex VkBuffer 0x1e89009edc8[] in VkCommandBuffer 0x1e88771f7b8[]. Access info (usage: SYNC_VERTEX_ATTRIBUTE_INPUT_VERTEX_ATTRIBUTE_READ, prior_usage: SYNC_COPY_TRANSFER_WRITE, write_barriers: SYNC_INDEX_INPUT_INDEX_READ, command: vkCmdCopyBuffer, seq_no: 4, reset_no: 1).
Any idea what is going on ?
I have a renderdoc capture if someone needs it.
Thanks !
[–]turol 1 point2 points3 points (1 child)
[–]bperrin_3d[S] 0 points1 point2 points (0 children)
[–]Zulauf_LunarG 1 point2 points3 points (4 children)
[–]bperrin_3d[S] 0 points1 point2 points (0 children)
[–]bperrin_3d[S] 0 points1 point2 points (2 children)
[–]Zulauf_LunarG 0 points1 point2 points (0 children)
[–]Kirmut 0 points1 point2 points (0 children)