VkSemaphoreSubmitInfo
The VkSemaphoreSubmitInfo
structure is defined as:
typedef struct VkSemaphoreSubmitInfo {
VkStructureType sType;
const void* pNext;
VkSemaphore semaphore;
uint64_t value;
VkPipelineStageFlags2 stageMask;
uint32_t deviceIndex;
} VkSemaphoreSubmitInfo;
or the equivalent
typedef VkSemaphoreSubmitInfo VkSemaphoreSubmitInfoKHR;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.semaphore
is a VkSemaphore affected by this operation.value
is either the value used to signalsemaphore
or the value waited on bysemaphore
, ifsemaphore
is a timeline semaphore. Otherwise it is ignored.stageMask
is a VkPipelineStageFlags2 mask of pipeline stages which limit the first synchronization scope of a semaphore signal operation, or second synchronization scope of a semaphore wait operation as described in the semaphore wait operation and semaphore signal operation sections of the synchronization chapter.deviceIndex
is the index of the device within a device group that executes the semaphore wait or signal operation.
Whether this structure defines a semaphore wait or signal operation is defined by how it is used.
Valid Usage
VUID-VkSemaphoreSubmitInfo-stageMask-03929
If the geometryShader
feature is not
enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT
VUID-VkSemaphoreSubmitInfo-stageMask-03930
If the tessellationShader
feature
is not enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT
or
VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT
VUID-VkSemaphoreSubmitInfo-stageMask-03931
If the conditionalRendering
feature is not enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT
VUID-VkSemaphoreSubmitInfo-stageMask-03932
If the fragmentDensityMap
feature
is not enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT
VUID-VkSemaphoreSubmitInfo-stageMask-03933
If the transformFeedback
feature
is not enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT
VUID-VkSemaphoreSubmitInfo-stageMask-03934
If the meshShader
feature is not enabled,
stageMask
must not contain
VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT
VUID-VkSemaphoreSubmitInfo-stageMask-03935
If the taskShader
feature is not enabled,
stageMask
must not contain
VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT
VUID-VkSemaphoreSubmitInfo-stageMask-07316
If neither the shadingRateImage
or
attachmentFragmentShadingRate
are enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR
VUID-VkSemaphoreSubmitInfo-stageMask-04957
If the subpassShading
feature is not
enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_SUBPASS_SHADER_BIT_HUAWEI
VUID-VkSemaphoreSubmitInfo-stageMask-04995
If the invocationMask
feature is not
enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI
VUID-VkSemaphoreSubmitInfo-stageMask-07946
If neither the VK_NV_ray_tracing extension or
rayTracingPipeline
feature are
enabled, stageMask
must not contain
VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR
VUID-VkSemaphoreSubmitInfo-device-03888
If the device
that semaphore
was created on is not a device
group, deviceIndex
must be 0
VUID-VkSemaphoreSubmitInfo-device-03889
If the device
that semaphore
was created on is a device
group, deviceIndex
must be a valid device index
Valid Usage (Implicit)
VUID-VkSemaphoreSubmitInfo-sType-sType
sType
must be VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO
VUID-VkSemaphoreSubmitInfo-pNext-pNext
pNext
must be NULL
VUID-VkSemaphoreSubmitInfo-semaphore-parameter
semaphore
must be a valid VkSemaphore handle
VUID-VkSemaphoreSubmitInfo-stageMask-parameter
stageMask
must be a valid combination of VkPipelineStageFlagBits2 values