| // Copyright 2020-2021 The Khronos Group Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| // Common Valid Usage |
| // Common to VkPipelineStageFlags2KHR parameters |
| // Set "stageMaskName" attribute to the name of the stage mask to validate |
| * [[VUID-{refpage}-{stageMaskName}-03929]] |
| If the <<features-geometryShader,geometry shaders>> feature is not |
| enabled, pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR |
| * [[VUID-{refpage}-{stageMaskName}-03930]] |
| If the <<features-tessellationShader,tessellation shaders>> feature is |
| not enabled, pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR or |
| ename:VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR |
| ifdef::VK_EXT_conditional_rendering[] |
| * [[VUID-{refpage}-{stageMaskName}-03931]] |
| If the <<features-conditionalRendering,conditional rendering>> feature |
| is not enabled, pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT |
| endif::VK_EXT_conditional_rendering[] |
| ifdef::VK_EXT_fragment_density_map[] |
| * [[VUID-{refpage}-{stageMaskName}-03932]] |
| If the <<features-fragmentDensityMap,fragment density map>> feature is |
| not enabled, pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT |
| endif::VK_EXT_fragment_density_map[] |
| ifdef::VK_EXT_transform_feedback[] |
| * [[VUID-{refpage}-{stageMaskName}-03933]] |
| If the <<features-transformFeedback,transform feedback>> feature is not |
| enabled, pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT |
| endif::VK_EXT_transform_feedback[] |
| ifdef::VK_NV_mesh_shader[] |
| * [[VUID-{refpage}-{stageMaskName}-03934]] |
| If the <<features-meshShader,mesh shaders>> feature is not enabled, |
| pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV |
| * [[VUID-{refpage}-{stageMaskName}-03935]] |
| If the <<features-taskShader,task shaders>> feature is not enabled, |
| pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV |
| endif::VK_NV_mesh_shader[] |
| ifdef::VK_NV_shading_rate_image[] |
| * [[VUID-{refpage}-{stageMaskName}-04956]] |
| If the <<features-shadingRateImage,shading rate image>> feature is not |
| enabled, pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV |
| endif::VK_NV_shading_rate_image[] |
| ifdef::VK_HUAWEI_subpass_shading[] |
| * [[VUID-{refpage}-{stageMaskName}-04957]] |
| If the <<features-subpassShading,subpass shading>> feature is not |
| enabled, pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI |
| endif::VK_HUAWEI_subpass_shading[] |
| ifdef::VK_HUAWEI_invocation_mask[] |
| * [[VUID-{refpage}-{stageMaskName}-04995]] |
| If the <<features-invocationMask, invocation mask image>> feature is not |
| enabled, pname:{stageMaskName} must: not contain |
| ename:VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI |
| endif::VK_HUAWEI_invocation_mask[] |
| // Common Valid Usage |