C Specification

Command buffers are objects used to record commands which can be subsequently submitted to a device queue for execution. There are two levels of command buffers - primary command buffers, which can execute secondary command buffers, and which are submitted to queues, and secondary command buffers, which can be executed by primary command buffers, and which are not directly submitted to queues.

Command buffers are represented by VkCommandBuffer handles:

// Provided by VK_VERSION_1_0
VK_DEFINE_HANDLE(VkCommandBuffer)

See Also

VK_VERSION_1_0, VkCommandBufferSubmitInfo, VkSubmitInfo, vkAllocateCommandBuffers, vkBeginCommandBuffer, vkCmdBeginConditionalRenderingEXT, vkCmdBeginDebugUtilsLabelEXT, vkCmdBeginQuery, vkCmdBeginQueryIndexedEXT, vkCmdBeginRenderPass, vkCmdBeginRenderPass2, vkCmdBeginRenderPass2KHR, vkCmdBeginRendering, vkCmdBeginRenderingKHR, vkCmdBeginTransformFeedbackEXT, vkCmdBeginVideoCodingKHR, vkCmdBindDescriptorBufferEmbeddedSamplers2EXT, vkCmdBindDescriptorBufferEmbeddedSamplersEXT, vkCmdBindDescriptorBuffersEXT, vkCmdBindDescriptorSets, vkCmdBindDescriptorSets2KHR, vkCmdBindIndexBuffer, vkCmdBindIndexBuffer2KHR, vkCmdBindInvocationMaskHUAWEI, vkCmdBindPipeline, vkCmdBindPipelineShaderGroupNV, vkCmdBindShadersEXT, vkCmdBindShadingRateImageNV, vkCmdBindTransformFeedbackBuffersEXT, vkCmdBindVertexBuffers, vkCmdBindVertexBuffers2, vkCmdBindVertexBuffers2EXT, vkCmdBlitImage, vkCmdBlitImage2, vkCmdBlitImage2KHR, vkCmdBuildAccelerationStructureNV, vkCmdBuildAccelerationStructuresIndirectKHR, vkCmdBuildAccelerationStructuresKHR, vkCmdBuildMicromapsEXT, vkCmdClearAttachments, vkCmdClearColorImage, vkCmdClearDepthStencilImage, vkCmdControlVideoCodingKHR, vkCmdCopyAccelerationStructureKHR, vkCmdCopyAccelerationStructureNV, vkCmdCopyAccelerationStructureToMemoryKHR, vkCmdCopyBuffer, vkCmdCopyBuffer2, vkCmdCopyBuffer2KHR, vkCmdCopyBufferToImage, vkCmdCopyBufferToImage2, vkCmdCopyBufferToImage2KHR, vkCmdCopyImage, vkCmdCopyImage2, vkCmdCopyImage2KHR, vkCmdCopyImageToBuffer, vkCmdCopyImageToBuffer2, vkCmdCopyImageToBuffer2KHR, vkCmdCopyMemoryIndirectNV, vkCmdCopyMemoryToAccelerationStructureKHR, vkCmdCopyMemoryToImageIndirectNV, vkCmdCopyMemoryToMicromapEXT, vkCmdCopyMicromapEXT, vkCmdCopyMicromapToMemoryEXT, vkCmdCopyQueryPoolResults, vkCmdCuLaunchKernelNVX, vkCmdCudaLaunchKernelNV, vkCmdDebugMarkerBeginEXT, vkCmdDebugMarkerEndEXT, vkCmdDebugMarkerInsertEXT, vkCmdDecodeVideoKHR, vkCmdDecompressMemoryIndirectCountNV, vkCmdDecompressMemoryNV, vkCmdDispatch, vkCmdDispatchBase, vkCmdDispatchBaseKHR, vkCmdDispatchGraphAMDX, vkCmdDispatchGraphIndirectAMDX, vkCmdDispatchGraphIndirectCountAMDX, vkCmdDispatchIndirect, vkCmdDraw, vkCmdDrawClusterHUAWEI, vkCmdDrawClusterIndirectHUAWEI, vkCmdDrawIndexed, vkCmdDrawIndexedIndirect, vkCmdDrawIndexedIndirectCount, vkCmdDrawIndexedIndirectCountAMD, vkCmdDrawIndexedIndirectCountKHR, vkCmdDrawIndirect, vkCmdDrawIndirectByteCountEXT, vkCmdDrawIndirectCount, vkCmdDrawIndirectCountAMD, vkCmdDrawIndirectCountKHR, vkCmdDrawMeshTasksEXT, vkCmdDrawMeshTasksIndirectCountEXT, vkCmdDrawMeshTasksIndirectCountNV, vkCmdDrawMeshTasksIndirectEXT, vkCmdDrawMeshTasksIndirectNV, vkCmdDrawMeshTasksNV, vkCmdDrawMultiEXT, vkCmdDrawMultiIndexedEXT, vkCmdEncodeVideoKHR, vkCmdEndConditionalRenderingEXT, vkCmdEndDebugUtilsLabelEXT, vkCmdEndQuery, vkCmdEndQueryIndexedEXT, vkCmdEndRenderPass, vkCmdEndRenderPass2, vkCmdEndRenderPass2KHR, vkCmdEndRendering, vkCmdEndRenderingKHR, vkCmdEndTransformFeedbackEXT, vkCmdEndVideoCodingKHR, vkCmdExecuteCommands, vkCmdExecuteGeneratedCommandsNV, vkCmdFillBuffer, vkCmdInitializeGraphScratchMemoryAMDX, vkCmdInsertDebugUtilsLabelEXT, vkCmdNextSubpass, vkCmdNextSubpass2, vkCmdNextSubpass2KHR, vkCmdOpticalFlowExecuteNV, vkCmdPipelineBarrier, vkCmdPipelineBarrier2, vkCmdPipelineBarrier2KHR, vkCmdPreprocessGeneratedCommandsNV, vkCmdPushConstants, vkCmdPushConstants2KHR, vkCmdPushDescriptorSet2KHR, vkCmdPushDescriptorSetKHR, vkCmdPushDescriptorSetWithTemplate2KHR, vkCmdPushDescriptorSetWithTemplateKHR, vkCmdResetEvent, vkCmdResetEvent2, vkCmdResetEvent2KHR, vkCmdResetQueryPool, vkCmdResolveImage, vkCmdResolveImage2, vkCmdResolveImage2KHR, vkCmdSetAlphaToCoverageEnableEXT, vkCmdSetAlphaToOneEnableEXT, vkCmdSetAttachmentFeedbackLoopEnableEXT, vkCmdSetBlendConstants, vkCmdSetCheckpointNV, vkCmdSetCoarseSampleOrderNV, vkCmdSetColorBlendAdvancedEXT, vkCmdSetColorBlendEnableEXT, vkCmdSetColorBlendEquationEXT, vkCmdSetColorWriteEnableEXT, vkCmdSetColorWriteMaskEXT, vkCmdSetConservativeRasterizationModeEXT, vkCmdSetCoverageModulationModeNV, vkCmdSetCoverageModulationTableEnableNV, vkCmdSetCoverageModulationTableNV, vkCmdSetCoverageReductionModeNV, vkCmdSetCoverageToColorEnableNV, vkCmdSetCoverageToColorLocationNV, vkCmdSetCullMode, vkCmdSetCullModeEXT, vkCmdSetDepthBias, vkCmdSetDepthBias2EXT, vkCmdSetDepthBiasEnable, vkCmdSetDepthBiasEnableEXT, vkCmdSetDepthBounds, vkCmdSetDepthBoundsTestEnable, vkCmdSetDepthBoundsTestEnableEXT, vkCmdSetDepthClampEnableEXT, vkCmdSetDepthClipEnableEXT, vkCmdSetDepthClipNegativeOneToOneEXT, vkCmdSetDepthCompareOp, vkCmdSetDepthCompareOpEXT, vkCmdSetDepthTestEnable, vkCmdSetDepthTestEnableEXT, vkCmdSetDepthWriteEnable, vkCmdSetDepthWriteEnableEXT, vkCmdSetDescriptorBufferOffsets2EXT, vkCmdSetDescriptorBufferOffsetsEXT, vkCmdSetDeviceMask, vkCmdSetDeviceMaskKHR, vkCmdSetDiscardRectangleEXT, vkCmdSetDiscardRectangleEnableEXT, vkCmdSetDiscardRectangleModeEXT, vkCmdSetEvent, vkCmdSetEvent2, vkCmdSetEvent2KHR, vkCmdSetExclusiveScissorEnableNV, vkCmdSetExclusiveScissorNV, vkCmdSetExtraPrimitiveOverestimationSizeEXT, vkCmdSetFragmentShadingRateEnumNV, vkCmdSetFragmentShadingRateKHR, vkCmdSetFrontFace, vkCmdSetFrontFaceEXT, vkCmdSetLineRasterizationModeEXT, vkCmdSetLineStippleEXT, vkCmdSetLineStippleEnableEXT, vkCmdSetLineStippleKHR, vkCmdSetLineWidth, vkCmdSetLogicOpEXT, vkCmdSetLogicOpEnableEXT, vkCmdSetPatchControlPointsEXT, vkCmdSetPerformanceMarkerINTEL, vkCmdSetPerformanceOverrideINTEL, vkCmdSetPerformanceStreamMarkerINTEL, vkCmdSetPolygonModeEXT, vkCmdSetPrimitiveRestartEnable, vkCmdSetPrimitiveRestartEnableEXT, vkCmdSetPrimitiveTopology, vkCmdSetPrimitiveTopologyEXT, vkCmdSetProvokingVertexModeEXT, vkCmdSetRasterizationSamplesEXT, vkCmdSetRasterizationStreamEXT, vkCmdSetRasterizerDiscardEnable, vkCmdSetRasterizerDiscardEnableEXT, vkCmdSetRayTracingPipelineStackSizeKHR, vkCmdSetRenderingAttachmentLocationsKHR, vkCmdSetRenderingInputAttachmentIndicesKHR, vkCmdSetRepresentativeFragmentTestEnableNV, vkCmdSetSampleLocationsEXT, vkCmdSetSampleLocationsEnableEXT, vkCmdSetSampleMaskEXT, vkCmdSetScissor, vkCmdSetScissorWithCount, vkCmdSetScissorWithCountEXT, vkCmdSetShadingRateImageEnableNV, vkCmdSetStencilCompareMask, vkCmdSetStencilOp, vkCmdSetStencilOpEXT, vkCmdSetStencilReference, vkCmdSetStencilTestEnable, vkCmdSetStencilTestEnableEXT, vkCmdSetStencilWriteMask, vkCmdSetTessellationDomainOriginEXT, vkCmdSetVertexInputEXT, vkCmdSetViewport, vkCmdSetViewportShadingRatePaletteNV, vkCmdSetViewportSwizzleNV, vkCmdSetViewportWScalingEnableNV, vkCmdSetViewportWScalingNV, vkCmdSetViewportWithCount, vkCmdSetViewportWithCountEXT, vkCmdSubpassShadingHUAWEI, vkCmdTraceRaysIndirect2KHR, vkCmdTraceRaysIndirectKHR, vkCmdTraceRaysKHR, vkCmdTraceRaysNV, vkCmdUpdateBuffer, vkCmdUpdatePipelineIndirectBufferNV, vkCmdWaitEvents, vkCmdWaitEvents2, vkCmdWaitEvents2KHR, vkCmdWriteAccelerationStructuresPropertiesKHR, vkCmdWriteAccelerationStructuresPropertiesNV, vkCmdWriteBufferMarker2AMD, vkCmdWriteBufferMarkerAMD, vkCmdWriteMicromapsPropertiesEXT, vkCmdWriteTimestamp, vkCmdWriteTimestamp2, vkCmdWriteTimestamp2KHR, vkEndCommandBuffer, vkFreeCommandBuffers, vkResetCommandBuffer

Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2024 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0