Выполняет следующее:
vkCmdUpdateBuffer(c, uniform_buffer, ...);
vkCmdBeginRenderPass(c, ...);
vkCmdBindDescriptorSets(c, ..., uniform_buffer_descriptor, ...);
vkCmdDraw(c, ...);
(ie vkCmdDraw будет использовать VkBuffer, который был только что обновлен vkCmdUpdateBuffer.)
... требуется синхронизация барьером или другим средства? Или обновление буфера завершится до выполнения команды draw? Как ты это понял?