1// WARNING: DO NOT MODIFY! This file is automatically generated from the vk.xml registry 2.Valid Usage (Implicit) 3**** 4* [[VUID-vkCmdCopyBuffer-commandBuffer-parameter]] pname:commandBuffer must: be a valid sname:VkCommandBuffer handle 5* [[VUID-vkCmdCopyBuffer-srcBuffer-parameter]] pname:srcBuffer must: be a valid sname:VkBuffer handle 6* [[VUID-vkCmdCopyBuffer-dstBuffer-parameter]] pname:dstBuffer must: be a valid sname:VkBuffer handle 7* [[VUID-vkCmdCopyBuffer-pRegions-parameter]] pname:pRegions must: be a valid pointer to an array of pname:regionCount valid sname:VkBufferCopy structures 8* [[VUID-vkCmdCopyBuffer-commandBuffer-recording]] pname:commandBuffer must: be in the <<commandbuffers-lifecycle, recording state>> 9* [[VUID-vkCmdCopyBuffer-commandBuffer-cmdpool]] The sname:VkCommandPool that pname:commandBuffer was allocated from must: support transfer, graphics, or compute operations 10* [[VUID-vkCmdCopyBuffer-renderpass]] This command must: only be called outside of a render pass instance 11* [[VUID-vkCmdCopyBuffer-regionCount-arraylength]] pname:regionCount must: be greater than `0` 12* [[VUID-vkCmdCopyBuffer-commonparent]] Each of pname:commandBuffer, pname:dstBuffer, and pname:srcBuffer must: have been created, allocated, or retrieved from the same sname:VkDevice 13**** 14 15.Host Synchronization 16**** 17* Host access to pname:commandBuffer must: be externally synchronized 18* Host access to the sname:VkCommandPool that pname:commandBuffer was allocated from must: be externally synchronized 19**** 20 21.Command Properties 22**** 23[options="header", width="100%"] 24|==== 25|<<VkCommandBufferLevel,Command Buffer Levels>>|<<vkCmdBeginRenderPass,Render Pass Scope>>|<<VkQueueFlagBits,Supported Queue Types>>|<<synchronization-pipeline-stages-types,Pipeline Type>> 26|Primary + 27Secondary|Outside|Transfer + 28Graphics + 29Compute|Transfer 30|==== 31**** 32 33