VkCommandBufferBeginInfo
The VkCommandBufferBeginInfo structure is defined as:
typedef struct VkCommandBufferBeginInfo {
VkStructureType sType;
const void* pNext;
VkCommandBufferUsageFlags flags;
const VkCommandBufferInheritanceInfo* pInheritanceInfo;
} VkCommandBufferBeginInfo;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.flagsis a bitmask of VkCommandBufferUsageFlagBits specifying usage behavior for the command buffer.pInheritanceInfois a pointer to a VkCommandBufferInheritanceInfo structure, used ifcommandBufferis a secondary command buffer. If this is a primary command buffer, then this value is ignored.
Valid Usage
VUID-VkCommandBufferBeginInfo-flags-09123
If flags contains
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT, the
VkCommandPool that commandBuffer was allocated from must
support graphics operations
VUID-VkCommandBufferBeginInfo-flags-00055
If flags contains
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT, the
framebuffer member of pInheritanceInfo must be either
VK_NULL_HANDLE, or a valid VkFramebuffer that is compatible
with the renderPass member of pInheritanceInfo
VUID-VkCommandBufferBeginInfo-flags-09240
If flags contains
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT and the
dynamicRendering feature is not
enabled, the renderPass member of pInheritanceInfo must not
be VK_NULL_HANDLE
VUID-VkCommandBufferBeginInfo-flags-06002
If flags contains
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT and the
renderPass member of pInheritanceInfo is
VK_NULL_HANDLE, the pNext chain of pInheritanceInfomust include a VkCommandBufferInheritanceRenderingInfo structure
VUID-VkCommandBufferBeginInfo-flags-06003
If flags contains
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT, the
renderPass member of pInheritanceInfo is
VK_NULL_HANDLE, and the pNext chain of
pInheritanceInfo includes a VkAttachmentSampleCountInfoAMD
or VkAttachmentSampleCountInfoNV structure, the
colorAttachmentCount member of that structure must be equal to
the value of
VkCommandBufferInheritanceRenderingInfo::colorAttachmentCount
VUID-VkCommandBufferBeginInfo-flags-06000
If flags contains
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT
and the renderPass member of pInheritanceInfo is not
VK_NULL_HANDLE,
the renderPass member of pInheritanceInfo must be a valid
VkRenderPass
VUID-VkCommandBufferBeginInfo-flags-06001
If flags contains
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT
and the renderPass member of pInheritanceInfo is not
VK_NULL_HANDLE,
the subpass member of pInheritanceInfo must be a valid
subpass index within the renderPass member of
pInheritanceInfo
VUID-VkCommandBufferBeginInfo-flags-10617
If flags contains
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT
, the renderPass member of pInheritanceInfo is not
VK_NULL_HANDLE,
and renderPass was created with tile
shading enabled, VK_TILE_SHADING_RENDER_PASS_ENABLE_BIT_QCOMmust be included in
VkRenderPassTileShadingCreateInfoQCOM::flags
VUID-VkCommandBufferBeginInfo-flags-10618
If flags does not contain
VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT
, the renderPass member of pInheritanceInfo is
VK_NULL_HANDLE,
or renderPass was not created with tile shading enabled,
VK_TILE_SHADING_RENDER_PASS_ENABLE_BIT_QCOM must not be included
in VkRenderPassTileShadingCreateInfoQCOM::flags
VUID-VkCommandBufferBeginInfo-flags-10619
If VK_TILE_SHADING_RENDER_PASS_ENABLE_BIT_QCOM is included in
VkRenderPassTileShadingCreateInfoQCOM::flags,
VkRenderPassTileShadingCreateInfoQCOM::tileApronSize must
be equal to the tileApronSize used to create renderPass
Valid Usage (Implicit)
VUID-VkCommandBufferBeginInfo-sType-sType
sType must be VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO
VUID-VkCommandBufferBeginInfo-pNext-pNext
pNext must be NULL or a pointer to a valid instance of VkDeviceGroupCommandBufferBeginInfo
VUID-VkCommandBufferBeginInfo-sType-unique
The sType value of each structure in the pNext chain must be unique
VUID-VkCommandBufferBeginInfo-flags-parameter
flags must be a valid combination of VkCommandBufferUsageFlagBits values