The order that command buffers appear in pCommandBuffers is used to determine submission order, and thus all the implicit ordering guarantees that respect it. Other than these implicit ordering guarantees and any explicit synchronization primitives, these command buffers may overlap or otherwise execute out of order.
geometryShader feature is not enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_GEOMETRY_SHADER_BITtessellationShader feature is not enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BITconditionalRendering feature is not enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXTfragmentDensityMap feature is not enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXTtransformFeedback feature is not enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXTmeshShader feature is not enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_MESH_SHADER_BIT_EXTtaskShader feature is not enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_TASK_SHADER_BIT_EXTshadingRateImage or attachmentFragmentShadingRate are enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHRsynchronization2 feature is not enabled, pWaitDstStageMask must not be 0VK_NV_ray_tracing extension or rayTracingPipeline feature are enabled, pWaitDstStageMask must not contain PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHRpCommandBuffers must not have been allocated with COMMAND_BUFFER_LEVEL_SECONDARYpWaitDstStageMask must not include PIPELINE_STAGE_HOST_BITpWaitSemaphores or pSignalSemaphores was created with a VkSemaphoreType of SEMAPHORE_TYPE_TIMELINE, then the pNext chain must include a VkTimelineSemaphoreSubmitInfo structurepNext chain of this structure includes a VkTimelineSemaphoreSubmitInfo structure and any element of pWaitSemaphores was created with a VkSemaphoreType of SEMAPHORE_TYPE_TIMELINE, then its waitSemaphoreValueCount member must equal waitSemaphoreCountpNext chain of this structure includes a VkTimelineSemaphoreSubmitInfo structure and any element of pSignalSemaphores was created with a VkSemaphoreType of SEMAPHORE_TYPE_TIMELINE, then its signalSemaphoreValueCount member must equal signalSemaphoreCountpSignalSemaphores created with a VkSemaphoreType of SEMAPHORE_TYPE_TIMELINE the corresponding element of VkTimelineSemaphoreSubmitInfo::pSignalSemaphoreValues must have a value greater than the current value of the semaphore when the semaphore signal operation is executedpWaitSemaphores created with a VkSemaphoreType of SEMAPHORE_TYPE_TIMELINE the corresponding element of VkTimelineSemaphoreSubmitInfo::pWaitSemaphoreValues must have a value which does not differ from the current value of the semaphore or the value of any outstanding semaphore wait or signal operation on that semaphore by more than maxTimelineSemaphoreValueDifferencepSignalSemaphores created with a VkSemaphoreType of SEMAPHORE_TYPE_TIMELINE the corresponding element of VkTimelineSemaphoreSubmitInfo::pSignalSemaphoreValues must have a value which does not differ from the current value of the semaphore or the value of any outstanding semaphore wait or signal operation on that semaphore by more than maxTimelineSemaphoreValueDifferencepNext chain of this structure does not include a VkProtectedSubmitInfo structure with protectedSubmit set to TRUE, then each element of the pCommandBuffers array must be an unprotected command bufferpNext chain of this structure includes a VkProtectedSubmitInfo structure with protectedSubmit set to TRUE, then each element of the pCommandBuffers array must be a protected command bufferpCommandBuffers contains any resumed render pass instances, they must be suspended by a render pass instance earlier in submission order within pCommandBufferspCommandBuffers contains any suspended render pass instances, they must be resumed by a render pass instance later in submission order within pCommandBufferspCommandBuffers contains any suspended render pass instances, there must be no action or synchronization commands executed in a primary or secondary command buffer between that render pass instance and the render pass instance that resumes itpCommandBuffers contains any suspended render pass instances, there must be no render pass instances between that render pass instance and the render pass instance that resumes itvariableSampleLocations limit is not supported, and any element of pCommandBuffers contains any suspended render pass instances, where a graphics pipeline has been bound, any pipelines bound in the render pass instance that resumes it, or any subsequent render pass instances that resume from that one and so on, must use the same sample locationssType must be STRUCTURE_TYPE_SUBMIT_INFOpNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkAmigoProfilingSubmitInfoSEC, VkD3D12FenceSubmitInfoKHR, VkDeviceGroupSubmitInfo, VkFrameBoundaryEXT, VkPerformanceQuerySubmitInfoKHR, VkProtectedSubmitInfo, VkTimelineSemaphoreSubmitInfo, VkWin32KeyedMutexAcquireReleaseInfoKHR, or VkWin32KeyedMutexAcquireReleaseInfoNVsType value of each struct in the pNext chain must be uniquewaitSemaphoreCount is not 0, pWaitSemaphores must be a valid pointer to an array of waitSemaphoreCount valid VkSemaphore handleswaitSemaphoreCount is not 0, pWaitDstStageMask must be a valid pointer to an array of waitSemaphoreCount valid combinations of VkPipelineStageFlagBits valuescommandBufferCount is not 0, pCommandBuffers must be a valid pointer to an array of commandBufferCount valid VkCommandBuffer handlessignalSemaphoreCount is not 0, pSignalSemaphores must be a valid pointer to an array of signalSemaphoreCount valid VkSemaphore handlespCommandBuffers, the elements of pSignalSemaphores, and the elements of pWaitSemaphores that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevice
struct VkSubmitInfo {
VkStructureType sType;
void const * pNext;
uint32_t waitSemaphoreCount;
VkSemaphore const * pWaitSemaphores;
VkPipelineStageFlags const * pWaitDstStageMask;
uint32_t commandBufferCount;
VkCommandBuffer const * pCommandBuffers;
uint32_t signalSemaphoreCount;
VkSemaphore const * pSignalSemaphores;
}
| Modifier and Type | Class and Description |
|---|---|
| public static class | VkSubmitInfo.
An array of |
| Modifier and Type | Field and Description |
|---|---|
| public static final int | ALIGNOF
The struct alignment in bytes. |
| public static final int | COMMANDBUFFERCOUNT
The struct member offsets. |
| public static final int | PCOMMANDBUFFERS
The struct member offsets. |
| public static final int | PNEXT
The struct member offsets. |
| public static final int | PSIGNALSEMAPHORES
The struct member offsets. |
| public static final int | PWAITDSTSTAGEMASK
The struct member offsets. |
| public static final int | PWAITSEMAPHORES
The struct member offsets. |
| public static final int | SIGNALSEMAPHORECOUNT
The struct member offsets. |
| public static final int | SIZEOF
The struct size in bytes. |
| public static final int | STYPE
The struct member offsets. |
| public static final int | WAITSEMAPHORECOUNT
The struct member offsets. |
| Access | Constructor and Description |
|---|---|
| protected | |
| public | VkSubmitInfo(ByteBuffer container)
Creates a |
| Modifier and Type | Method and Description |
|---|---|
| public static VkSubmitInfo | |
| public static VkSubmitInfo. | calloc(int
the buffer capacity capacity)Returns a new |
| public static VkSubmitInfo | calloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkSubmitInfo. | calloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| public static VkSubmitInfo | |
| public static VkSubmitInfo | |
| public static VkSubmitInfo. | |
| public static VkSubmitInfo. | |
| public int | |
| protected VkSubmitInfo | create(long
the struct memory address address, ByteBuffer an optional container buffer, to be referenced strongly by the struct instance. container)Implements abstract org. the constructor, but returns the exact type of the Struct subclass.
|
| public static VkSubmitInfo | |
| public static VkSubmitInfo | |
| public static VkSubmitInfo. | create(int
the buffer capacity capacity)Returns a new |
| public static VkSubmitInfo. | create(long
the memory address address, int the buffer capacity capacity)Create a |
| public static VkSubmitInfo | |
| public static VkSubmitInfo. | |
| public static VkSubmitInfo | |
| public static VkSubmitInfo. | malloc(int
the buffer capacity capacity)Returns a new |
| public static VkSubmitInfo | malloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkSubmitInfo. | malloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| public static VkSubmitInfo | |
| public static VkSubmitInfo | |
| public static VkSubmitInfo. | |
| public static VkSubmitInfo. | |
| public static int | |
| public static void | ncommandBufferCount(long struct, int value)
Sets the specified value to the |
| public static PointerBuffer | |
| public static void | |
| public static long | |
| public static void | |
| public static LongBuffer | |
| public static void | |
| public static IntBuffer | |
| public static void | |
| public static LongBuffer | |
| public static void | |
| public static int | |
| public static void | nsignalSemaphoreCount(long struct, int value)
Sets the specified value to the |
| public static int | |
| public static void | |
| public static int | |
| public static void | nwaitSemaphoreCount(long struct, int value)
Sets the specified value to the |
| public PointerBuffer | |
| public VkSubmitInfo | pCommandBuffers(PointerBuffer value)
Sets the address of the specified |
| public long | |
| public VkSubmitInfo | |
| public VkSubmitInfo | pNext(VkAmigoProfilingSubmitInfoSEC value)
Prepends the specified |
| public VkSubmitInfo | pNext(VkD3D12FenceSubmitInfoKHR value)
Prepends the specified |
| public VkSubmitInfo | pNext(VkDeviceGroupSubmitInfo value)
Prepends the specified |
| public VkSubmitInfo | pNext(VkDeviceGroupSubmitInfoKHR value)
Prepends the specified |
| public VkSubmitInfo | |
| public VkSubmitInfo | pNext(VkPerformanceQuerySubmitInfoKHR value)
Prepends the specified |
| public VkSubmitInfo | pNext(VkProtectedSubmitInfo value)
Prepends the specified |
| public VkSubmitInfo | pNext(VkTimelineSemaphoreSubmitInfo value)
Prepends the specified |
| public VkSubmitInfo | pNext(VkTimelineSemaphoreSubmitInfoKHR value)
Prepends the specified |
| public VkSubmitInfo | pNext(VkWin32KeyedMutexAcquireReleaseInfoKHR value)
Prepends the specified |
| public VkSubmitInfo | pNext(VkWin32KeyedMutexAcquireReleaseInfoNV value)
Prepends the specified |
| public LongBuffer | pSignalSemaphores()
a pointer to an array of |
| public VkSubmitInfo | pSignalSemaphores(LongBuffer value)
Sets the address of the specified |
| public IntBuffer | pWaitDstStageMask()
a pointer to an array of pipeline stages at which each corresponding semaphore wait will occur. |
| public VkSubmitInfo | pWaitDstStageMask(IntBuffer value)
Sets the address of the specified |
| public LongBuffer | pWaitSemaphores()
a pointer to an array of |
| public VkSubmitInfo | pWaitSemaphores(LongBuffer value)
Sets the address of the specified |
| public VkSubmitInfo | set(int sType, long pNext, int waitSemaphoreCount, LongBuffer pWaitSemaphores, IntBuffer pWaitDstStageMask, PointerBuffer pCommandBuffers, LongBuffer pSignalSemaphores)
Initializes this struct with the specified values. |
| public VkSubmitInfo | Returns: this structthe source struct src)Copies the specified struct data to this struct. |
| public int | signalSemaphoreCount()
the number of semaphores to be signaled once the commands specified in |
| public int | |
| public int | |
| public VkSubmitInfo | |
| public VkSubmitInfo | |
| public static void | |
| public int | waitSemaphoreCount()
the number of semaphores upon which to wait before executing the command buffers for the batch. |
| public VkSubmitInfo |