Class VkGraphicsPipelineShaderGroupsCreateInfoNV

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkGraphicsPipelineShaderGroupsCreateInfoNV>
org.lwjgl.vulkan.VkGraphicsPipelineShaderGroupsCreateInfoNV
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

public class VkGraphicsPipelineShaderGroupsCreateInfoNV extends org.lwjgl.system.Struct<VkGraphicsPipelineShaderGroupsCreateInfoNV> implements org.lwjgl.system.NativeResource
Structure specifying parameters of a newly created multi shader group pipeline.
Description

When referencing shader groups by index, groups defined in the referenced pipelines are treated as if they were defined as additional entries in pGroups. They are appended in the order they appear in the pPipelines array and in the pGroups array when those pipelines were defined.

The application must maintain the lifetime of all such referenced pipelines based on the pipelines that make use of them.

Valid Usage
  • groupCount must be at least 1 and as maximum VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV::maxGraphicsShaderGroupCount
  • The sum of groupCount including those groups added from referenced pPipelines must also be as maximum VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV::maxGraphicsShaderGroupCount
  • The state of the first element of pGroups must match its equivalent within the parent’s VkGraphicsPipelineCreateInfo
  • Each element of pGroups must in combination with the rest of the pipeline state yield a valid state configuration
  • All elements of pGroups must use the same shader stage combinations unless any mesh shader stage is used, then either combination of task and mesh or just mesh shader is valid
  • Mesh and regular primitive shading stages cannot be mixed across pGroups
  • Each element of pPipelines must have been created with identical state to the pipeline currently created except the state that can be overridden by VkGraphicsShaderGroupCreateInfoNV
  • The VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV::deviceGeneratedCommands feature must be enabled
Valid Usage (Implicit)
See Also

VkGraphicsShaderGroupCreateInfoNV

Layout


 struct VkGraphicsPipelineShaderGroupsCreateInfoNV {
     VkStructureType sType();
     void const * pNext();
     uint32_t groupCount();
     VkGraphicsShaderGroupCreateInfoNV const * pGroups();
     uint32_t pipelineCount();
     VkPipeline const * pPipelines();
 }