Vulkan-Docs/doc/specs/vulkan/validity/protos/vkCmdCopyBuffer.txt
Jon Leech 5d10fc3089 Change log for April 8, 2016 Vulkan 1.0.9 spec update:
* Bump API patch number and header version number to 9 for this
    update.

Github Issues:

  * Fix memory type preorder definition and clarify example list and source
    code for slink:VkMemoryRequirements and slink:VkMemoryHeap (public issue
    26).
  * Ensure slink:VkAllocationCallbacks are properly defined (public issue
    73).
  * Clarify the WSI extension language by switching from the fuzzier
    "ownership" language to more-consistent "acquire" language (public issue
    117).
  * Add language allowing allocation and freeing of memory scoped to the
    duration of any API command in the <<memory-allocation,Memory
    Allocation>> section (public issue 136).
  * Clarify the explicit location assignment always overrides the inherited
    location in the <<interfaces-iointerfaces-locations,Location
    Assignment>> section, even for the first member of a block (public issue
    141).
  * Fixed references to
    slink:VkCommandBufferInheritanceInfo::pname:pipelineStatistics (public
    issue 158).
  * Fix name of slink:VkBufferCopy::pname:size field in validity language
    for flink:vkCmdCopyBuffer (public issue 162).

Internal Issues:

  * Update GL_KHR_vulkan_glsl specification to clarify disallowance of
    spec-const arrays in initializers (internal issue 248).
  * Clarify <<interfaces-iointerfaces-matching,Interface Matching>> section
    to state that user-defined variable interface must match too (internal
    issue 250).
2016-04-07 03:53:04 -07:00

64 lines
3.1 KiB
Plaintext

// WARNING: DO NOT MODIFY! This file is automatically generated from the vk.xml registry
ifndef::doctype-manpage[]
.Valid Usage
********************************************************************************
endif::doctype-manpage[]
ifdef::doctype-manpage[]
Valid Usage
-----------
endif::doctype-manpage[]
* pname:commandBuffer must: be a valid sname:VkCommandBuffer handle
* pname:srcBuffer must: be a valid sname:VkBuffer handle
* pname:dstBuffer must: be a valid sname:VkBuffer handle
* pname:pRegions must: be a pointer to an array of pname:regionCount sname:VkBufferCopy structures
* pname:commandBuffer must: be in the recording state
* The sname:VkCommandPool that pname:commandBuffer was allocated from must: support transfer, graphics or compute operations
* This command must: only be called outside of a render pass instance
* pname:regionCount must: be greater than `0`
* Each of pname:commandBuffer, pname:srcBuffer and pname:dstBuffer must: have been created, allocated or retrieved from the same sname:VkDevice
* The pname:size member of a given element of pname:pRegions must: be greater than `0`
* The pname:srcOffset member of a given element of pname:pRegions must: be less than the size of pname:srcBuffer
* The pname:dstOffset member of a given element of pname:pRegions must: be less than the size of pname:dstBuffer
* The pname:size member of a given element of pname:pRegions must: be less than or equal to the size of pname:srcBuffer minus pname:srcOffset
* The pname:size member of a given element of pname:pRegions must: be less than or equal to the size of pname:dstBuffer minus pname:dstOffset
* The union of the source regions, and the union of the destination regions, specified by the elements of pname:pRegions, mustnot: overlap in memory
* pname:srcBuffer must: have been created with ename:VK_BUFFER_USAGE_TRANSFER_SRC_BIT usage flag
* pname:dstBuffer must: have been created with ename:VK_BUFFER_USAGE_TRANSFER_DST_BIT usage flag
ifndef::doctype-manpage[]
********************************************************************************
endif::doctype-manpage[]
ifndef::doctype-manpage[]
.Host Synchronization
********************************************************************************
endif::doctype-manpage[]
ifdef::doctype-manpage[]
Host Synchronization
--------------------
endif::doctype-manpage[]
* Host access to pname:commandBuffer must: be externally synchronized
ifndef::doctype-manpage[]
********************************************************************************
endif::doctype-manpage[]
ifndef::doctype-manpage[]
.Command Properties
********************************************************************************
endif::doctype-manpage[]
ifdef::doctype-manpage[]
Command Properties
------------------
endif::doctype-manpage[]
[options="header", width="100%"]
|=====================
|Command Buffer Levels|Render Pass Scope|Supported Queue Types
|Primary +
Secondary|Outside|TRANSFER +
GRAPHICS +
COMPUTE
|=====================
ifndef::doctype-manpage[]
********************************************************************************
endif::doctype-manpage[]