VkPhysicalDeviceMeshShaderFeaturesEXT
The VkPhysicalDeviceMeshShaderFeaturesEXT
structure is defined as:
typedef struct VkPhysicalDeviceMeshShaderFeaturesEXT {
VkStructureType sType;
void* pNext;
VkBool32 taskShader;
VkBool32 meshShader;
VkBool32 multiviewMeshShader;
VkBool32 primitiveFragmentShadingRateMeshShader;
VkBool32 meshShaderQueries;
} VkPhysicalDeviceMeshShaderFeaturesEXT;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.-
taskShader
specifies whether task shaders are supported. If this feature is not enabled, theVK_SHADER_STAGE_TASK_BIT_EXT
andVK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT
enum values must not be used. -
meshShader
specifies whether mesh shaders are supported. If this feature is not enabled, theVK_SHADER_STAGE_MESH_BIT_EXT
andVK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT
enum values must not be used. -
multiviewMeshShader
specifies whether the implementation supportsmultiview
rendering within a render pass, with mesh shaders. If this feature is not enabled, then a pipeline compiled against a subpass with a non-zero view mask must not include a mesh shader. primitiveFragmentShadingRateMeshShader
indicates that the implementation supports the primitive fragment shading rate in mesh shaders.-
meshShaderQueries
indicates that the implementation supports creating query pools using theVK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT
query type and statistic queries containing theVK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT
andVK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT
flags
If the VkPhysicalDeviceMeshShaderFeaturesEXT
structure is included in the pNext
chain of the
VkPhysicalDeviceFeatures2 structure passed to
vkGetPhysicalDeviceFeatures2, it is filled in to indicate whether each
corresponding feature is supported.
VkPhysicalDeviceMeshShaderFeaturesEXT
can also be used in the pNext
chain of
VkDeviceCreateInfo to selectively enable these features.
The corresponding features of the VkPhysicalDeviceMeshShaderFeaturesNV
structure must match those in VkPhysicalDeviceMeshShaderFeaturesEXT
.
Valid Usage
VUID-VkPhysicalDeviceMeshShaderFeaturesEXT-multiviewMeshShader-07032
If multiviewMeshShader
is enabled then
VkPhysicalDeviceMultiviewFeaturesKHR
::multiview
must also
be enabled
VUID-VkPhysicalDeviceMeshShaderFeaturesEXT-primitiveFragmentShadingRateMeshShader-07033
If primitiveFragmentShadingRateMeshShader
is enabled then
VkPhysicalDeviceFragmentShadingRateFeaturesKHR
::primitiveFragmentShadingRate
must also be enabled
Valid Usage (Implicit)
VUID-VkPhysicalDeviceMeshShaderFeaturesEXT-sType-sType
sType
must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT