Class VkIndirectCommandsLayoutCreateInfoEXT

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

public class VkIndirectCommandsLayoutCreateInfoEXT extends org.lwjgl.system.Struct<VkIndirectCommandsLayoutCreateInfoEXT> implements org.lwjgl.system.NativeResource
Structure specifying the parameters of a newly created indirect commands layout object.
Description

The following code illustrates some of the flags:


 void cmdProcessAllSequences(cmd, indirectExecutionSet, indirectCommandsLayout, indirectAddress, sequencesCount)
 {
   for (s = 0; s < sequencesCount; s++)
   {
     sUsed = s;
 
     if (indirectCommandsLayout.flags & VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_EXT) {
       sUsed = incoherent_implementation_dependent_permutation[ sUsed ];
     }
 
     cmdProcessSequence( cmd, indirectExecutionSet, indirectCommandsLayout, indirectAddress, sUsed );
   }
 }

When tokens are consumed, an offset is computed based on token offset and stream stride. The resulting offset is required to be aligned. The alignment for a specific token is equal to the scalar alignment of the data type as defined in Alignment Requirements, or 4, whichever is lower.

Valid Usage
Valid Usage (Implicit)
  • sType must be STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_EXT
  • pNext must be NULL or a pointer to a valid instance of VkPipelineLayoutCreateInfo
  • The sType value of each struct in the pNext chain must be unique
  • flags must be a valid combination of VkIndirectCommandsLayoutUsageFlagBitsEXT values
  • shaderStages must be a valid combination of VkShaderStageFlagBits values
  • shaderStages must not be 0
  • If pipelineLayout is not NULL_HANDLE, pipelineLayout must be a valid VkPipelineLayout handle
  • pTokens must be a valid pointer to an array of tokenCount valid VkIndirectCommandsLayoutTokenEXT structures
  • tokenCount must be greater than 0
See Also

VkIndirectCommandsLayoutTokenEXT, CreateIndirectCommandsLayoutEXT

Layout


 struct VkIndirectCommandsLayoutCreateInfoEXT {
     VkStructureType sType();
     void const * pNext();
     VkIndirectCommandsLayoutUsageFlagsEXT flags();
     VkShaderStageFlags shaderStages();
     uint32_t indirectStride();
     VkPipelineLayout pipelineLayout();
     uint32_t tokenCount();
     VkIndirectCommandsLayoutTokenEXT const * pTokens();
 }