Structures

VkDrawMeshTasksIndirectCommandEXT

Structure specifying a mesh tasks draw indirect command

The VkDrawMeshTasksIndirectCommandEXT structure is defined as:

typedef struct VkDrawMeshTasksIndirectCommandEXT {
    uint32_t groupCountX;
    uint32_t groupCountY;
    uint32_t groupCountZ;
} VkDrawMeshTasksIndirectCommandEXT;
  • groupCountX is the number of local workgroups to dispatch in the X dimension.
  • groupCountY is the number of local workgroups to dispatch in the Y dimension.
  • groupCountZ is the number of local workgroups to dispatch in the Z dimension.

The members of VkDrawMeshTasksIndirectCommandEXT have the same meaning as the similarly named parameters of vkCmdDrawMeshTasksEXT.

Valid Usage

VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07322

If the current pipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS contains a shader using the TaskEXT Execution Model, groupCountX must be less than or equal to VkPhysicalDeviceMeshShaderPropertiesEXT::maxTaskWorkGroupCount[0]

VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07323

If the current pipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS contains a shader using the TaskEXT Execution Model, groupCountY must be less than or equal to VkPhysicalDeviceMeshShaderPropertiesEXT::maxTaskWorkGroupCount[1]

VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07324

If the current pipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS contains a shader using the TaskEXT Execution Model, groupCountZ must be less than or equal to VkPhysicalDeviceMeshShaderPropertiesEXT::maxTaskWorkGroupCount[2]

VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07325

If the current pipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS contains a shader using the TaskEXT Execution Model, The product of groupCountX, groupCountY and groupCountZ must be less than or equal to VkPhysicalDeviceMeshShaderPropertiesEXT::maxTaskWorkGroupTotalCount

VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07326

If the current pipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS does not contain a shader using the TaskEXT Execution Model, groupCountX must be less than or equal to VkPhysicalDeviceMeshShaderPropertiesEXT::maxMeshWorkGroupCount[0]

VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07327

If the current pipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS does not contain a shader using the TaskEXT Execution Model, groupCountY must be less than or equal to VkPhysicalDeviceMeshShaderPropertiesEXT::maxMeshWorkGroupCount[1]

VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07328

If the current pipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS does not contain a shader using the TaskEXT Execution Model, groupCountZ must be less than or equal to VkPhysicalDeviceMeshShaderPropertiesEXT::maxMeshWorkGroupCount[2]

VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07329

If the current pipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS does not contain a shader using the TaskEXT Execution Model, The product of groupCountX, groupCountY and groupCountZmust be less than or equal to VkPhysicalDeviceMeshShaderPropertiesEXT::maxMeshWorkGroupTotalCount