# Interface VulkanGraphicsPipelineCreateInfoType

All Known Implementing Classes:
  `VulkanGraphicsPipelineCreateInfo`

@Immutable public interface VulkanGraphicsPipelineCreateInfoType
Structure specifying parameters of a newly created graphics pipeline.

See Also:
  - "VkGraphicsPipelineCreateInfo"

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Optional<VulkanPipelineType>`
  `basePipeline()`
  `OptionalInt`
  `basePipelineIndex()`
  `default VulkanPipelineColorBlendStateCreateInfo`
  `colorBlendState()`
  `default VulkanPipelineDepthStencilStateCreateInfo`
  `depthStencilState()`
  `default VulkanPipelineDynamicStateCreateInfo`
  `dynamicState()`
  `Set<VulkanPipelineCreateFlag>`
  `flags()`
  `default VulkanPipelineInputAssemblyStateCreateInfo`
  `inputAssemblyState()`
  `VulkanPipelineLayoutType`
  `layout()`
  `default VulkanPipelineMultisampleStateCreateInfo`
  `multisampleState()`
  `default VulkanPipelineRasterizationStateCreateInfo`
  `rasterizationState()`
  `Optional<VulkanPipelineRenderingCreateInfo>`
  `renderingCreateInfo()`
  `Optional<VulkanRenderPassType>`
  `renderPass()`
  `List<VulkanPipelineShaderStageCreateInfo>`
  `stages()`
  `default int`
  `subpass()`
  `default VulkanPipelineTessellationStateCreateInfo`
  `tessellationState()`
  `default VulkanPipelineVertexInputStateCreateInfo`
  `vertexInputState()`
  `default VulkanPipelineViewportStateCreateInfo`
  `viewportState()`

- ## Method Details

  - ### flags

    Set<VulkanPipelineCreateFlag> flags()
    Returns:
      Flags specifying how the pipeline will be generated.

  - ### stages

    List<VulkanPipelineShaderStageCreateInfo> stages()
    Returns:
      The shader stages to be included in the graphics pipeline.

  - ### vertexInputState

    @Default default VulkanPipelineVertexInputStateCreateInfo vertexInputState()
    Returns:
      State for the vertex shading stage

  - ### inputAssemblyState

    @Default default VulkanPipelineInputAssemblyStateCreateInfo inputAssemblyState()
    Returns:
      State for the input assembly stage

  - ### tessellationState

    @Default default VulkanPipelineTessellationStateCreateInfo tessellationState()
    Returns:
      State for the tesselation stage

  - ### viewportState

    @Default default VulkanPipelineViewportStateCreateInfo viewportState()
    Returns:
      State for the viewport

  - ### rasterizationState

    @Default default VulkanPipelineRasterizationStateCreateInfo rasterizationState()
    Returns:
      State for the rasterization stage

  - ### multisampleState

    @Default default VulkanPipelineMultisampleStateCreateInfo multisampleState()
    Returns:
      State for multisampling

  - ### depthStencilState

    @Default default VulkanPipelineDepthStencilStateCreateInfo depthStencilState()
    Returns:
      State for the depth/stencil buffer

  - ### colorBlendState

    @Default default VulkanPipelineColorBlendStateCreateInfo colorBlendState()
    Returns:
      State for the color blending stage

  - ### dynamicState

    @Default default VulkanPipelineDynamicStateCreateInfo dynamicState()
    Returns:
      Dynamic state

  - ### layout

    VulkanPipelineLayoutType layout()
    Returns:
      The description of binding locations used by both the pipeline and descriptor sets used with the pipeline.

  - ### renderPass

    Optional<VulkanRenderPassType> renderPass()
    Returns:
      A handle to a render pass object describing the environment in which the pipeline will be used; the pipeline must only be used with an instance of any render pass compatible with the one provided.

  - ### subpass

    @Default default int subpass()
    Returns:
      The index of the subpass in the render pass where this pipeline will be used.

  - ### basePipeline

    Optional<VulkanPipelineType> basePipeline()
    Returns:
      A pipeline to derive from.

  - ### basePipelineIndex

    OptionalInt basePipelineIndex()
    Returns:
      An index into the createInfos parameter to use as a pipeline to derive from.

  - ### renderingCreateInfo

    Optional<VulkanPipelineRenderingCreateInfo> renderingCreateInfo()
    Returns:
      The rendering info used for dynamic rendering