• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2020-2023 The Khronos Group Inc.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5// Common Valid Usage
6// Common to VkCmdCopyBufferToImage* commands
7  * [[VUID-{refpage}-pRegions-00171]]
8    pname:srcBuffer must: be large enough to contain all buffer locations
9    that are accessed according to <<copies-buffers-images-addressing,Buffer
10    and Image Addressing>>, for each element of pname:pRegions
11  * The union of all source regions, and the union of all destination
12    regions, specified by the elements of pname:pRegions, must: not overlap
13    in memory
14  * pname:srcBuffer must: have been created with ename:VK_BUFFER_USAGE_TRANSFER_SRC_BIT usage flag
15ifdef::VK_VERSION_1_1,VK_KHR_maintenance1[]
16  * The <<resources-image-format-features,format features>> of
17    pname:dstImage must: contain ename:VK_FORMAT_FEATURE_TRANSFER_DST_BIT
18endif::VK_VERSION_1_1,VK_KHR_maintenance1[]
19  * [[VUID-{refpage}-srcBuffer-00176]]
20    If pname:srcBuffer is non-sparse then it must: be bound completely and contiguously to a single sname:VkDeviceMemory object
21  * [[VUID-{refpage}-dstImage-00177]] pname:dstImage must: have been created with ename:VK_IMAGE_USAGE_TRANSFER_DST_BIT usage flag
22  * [[VUID-{refpage}-dstImage-00178]]
23    If pname:dstImage is non-sparse then it must: be bound completely and contiguously to a single sname:VkDeviceMemory object
24  * pname:dstImage must: have a sample count equal to
25    ename:VK_SAMPLE_COUNT_1_BIT
26  * pname:dstImageLayout must: specify the layout of the image subresources of pname:dstImage specified in pname:pRegions at the time this command is executed on a sname:VkDevice
27ifndef::VK_KHR_shared_presentable_image[]
28  * [[VUID-{refpage}-dstImageLayout-00181]]
29    pname:dstImageLayout must: be ename:VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
30    or ename:VK_IMAGE_LAYOUT_GENERAL
31endif::VK_KHR_shared_presentable_image[]
32// Common Valid Usage
33