vulkan-3.26.1: Bindings to the Vulkan graphics API.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Vulkan.Core10.Pipeline

Synopsis

Documentation

createGraphicsPipelines Source #

Arguments

:: forall io. MonadIO io 
=> Device

device is the logical device that creates the graphics pipelines.

-> PipelineCache

pipelineCache is either NULL_HANDLE, indicating that pipeline caching is disabled; or the handle of a valid pipeline cache object, in which case use of that cache is enabled for the duration of the command.

-> ("createInfos" ::: Vector (SomeStruct GraphicsPipelineCreateInfo))

pCreateInfos is a pointer to an array of GraphicsPipelineCreateInfo structures.

-> ("allocator" ::: Maybe AllocationCallbacks)

pAllocator controls host memory allocation as described in the Memory Allocation chapter.

-> io (Result, "pipelines" ::: Vector Pipeline) 

vkCreateGraphicsPipelines - Create graphics pipelines

Description

The GraphicsPipelineCreateInfo structure includes an array of PipelineShaderStageCreateInfo structures for each of the desired active shader stages, as well as creation information for all relevant fixed-function stages, and a pipeline layout.

Valid Usage

  • If the flags member of any element of pCreateInfos contains the PIPELINE_CREATE_DERIVATIVE_BIT flag, and the basePipelineIndex member of that same element is not -1, basePipelineIndex must be less than the index into pCreateInfos that corresponds to that element

Note

An implicit cache may be provided by the implementation or a layer. For this reason, it is still valid to set PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT on flags for any element of pCreateInfos while passing NULL_HANDLE for pipelineCache.

Valid Usage (Implicit)

  • device must be a valid Device handle
  • If pipelineCache is not NULL_HANDLE, pipelineCache must be a valid PipelineCache handle
  • pCreateInfos must be a valid pointer to an array of createInfoCount valid GraphicsPipelineCreateInfo structures
  • If pAllocator is not NULL, pAllocator must be a valid pointer to a valid AllocationCallbacks structure
  • pPipelines must be a valid pointer to an array of createInfoCount Pipeline handles
  • createInfoCount must be greater than 0
  • If pipelineCache is a valid handle, it must have been created, allocated, or retrieved from device

Return Codes

Success
Failure

See Also

VK_VERSION_1_0, AllocationCallbacks, Device, GraphicsPipelineCreateInfo, Pipeline, PipelineCache

withGraphicsPipelines :: forall io r. MonadIO io => Device -> PipelineCache -> Vector (SomeStruct GraphicsPipelineCreateInfo) -> Maybe AllocationCallbacks -> (io (Result, Vector Pipeline) -> ((Result, Vector Pipeline) -> io ()) -> r) -> r Source #

A convenience wrapper to make a compatible pair of calls to createGraphicsPipelines and destroyPipeline

To ensure that destroyPipeline is always called: pass bracket (or the allocate function from your favourite resource management library) as the last argument. To just extract the pair pass (,) as the last argument.

createComputePipelines Source #

Arguments

:: forall io. MonadIO io 
=> Device

device is the logical device that creates the compute pipelines.

-> PipelineCache

pipelineCache is either NULL_HANDLE, indicating that pipeline caching is disabled; or the handle of a valid pipeline cache object, in which case use of that cache is enabled for the duration of the command.

-> ("createInfos" ::: Vector (SomeStruct ComputePipelineCreateInfo))

pCreateInfos is a pointer to an array of ComputePipelineCreateInfo structures.

-> ("allocator" ::: Maybe AllocationCallbacks)

pAllocator controls host memory allocation as described in the Memory Allocation chapter.

-> io (Result, "pipelines" ::: Vector Pipeline) 

vkCreateComputePipelines - Creates a new compute pipeline object

Valid Usage

  • If the flags member of any element of pCreateInfos contains the PIPELINE_CREATE_DERIVATIVE_BIT flag, and the basePipelineIndex member of that same element is not -1, basePipelineIndex must be less than the index into pCreateInfos that corresponds to that element

Valid Usage (Implicit)

  • device must be a valid Device handle
  • If pipelineCache is not NULL_HANDLE, pipelineCache must be a valid PipelineCache handle
  • pCreateInfos must be a valid pointer to an array of createInfoCount valid ComputePipelineCreateInfo structures
  • If pAllocator is not NULL, pAllocator must be a valid pointer to a valid AllocationCallbacks structure
  • pPipelines must be a valid pointer to an array of createInfoCount Pipeline handles
  • createInfoCount must be greater than 0
  • If pipelineCache is a valid handle, it must have been created, allocated, or retrieved from device

Return Codes

Success
Failure

See Also

VK_VERSION_1_0, AllocationCallbacks, ComputePipelineCreateInfo, Device, Pipeline, PipelineCache

withComputePipelines :: forall io r. MonadIO io => Device -> PipelineCache -> Vector (SomeStruct ComputePipelineCreateInfo) -> Maybe AllocationCallbacks -> (io (Result, Vector Pipeline) -> ((Result, Vector Pipeline) -> io ()) -> r) -> r Source #

A convenience wrapper to make a compatible pair of calls to createComputePipelines and destroyPipeline

To ensure that destroyPipeline is always called: pass bracket (or the allocate function from your favourite resource management library) as the last argument. To just extract the pair pass (,) as the last argument.

destroyPipeline Source #

Arguments

:: forall io. MonadIO io 
=> Device

device is the logical device that destroys the pipeline.

-> Pipeline

pipeline is the handle of the pipeline to destroy.

-> ("allocator" ::: Maybe AllocationCallbacks)

pAllocator controls host memory allocation as described in the Memory Allocation chapter.

-> io () 

vkDestroyPipeline - Destroy a pipeline object

Valid Usage

  • All submitted commands that refer to pipeline must have completed execution
  • If AllocationCallbacks were provided when pipeline was created, a compatible set of callbacks must be provided here
  • If no AllocationCallbacks were provided when pipeline was created, pAllocator must be NULL

Valid Usage (Implicit)

  • device must be a valid Device handle
  • If pipeline is not NULL_HANDLE, pipeline must be a valid Pipeline handle
  • If pAllocator is not NULL, pAllocator must be a valid pointer to a valid AllocationCallbacks structure
  • If pipeline is a valid handle, it must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to pipeline must be externally synchronized

See Also

VK_VERSION_1_0, AllocationCallbacks, Device, Pipeline

data Viewport Source #

VkViewport - Structure specifying a viewport

Description

Note

Despite their names, minDepth can be less than, equal to, or greater than maxDepth.

The framebuffer depth coordinate zf may be represented using either a fixed-point or floating-point representation. However, a floating-point representation must be used if the depth/stencil attachment has a floating-point depth component. If an m-bit fixed-point representation is used, we assume that it represents each value \(\frac{k}{2^m - 1}\), where k ∈ { 0, 1, …​, 2m-1 }, as k (e.g. 1.0 is represented in binary as a string of all ones).

The viewport parameters shown in the above equations are found from these values as

If a render pass transform is enabled, the values (px,py) and (ox, oy) defining the viewport are transformed as described in render pass transform before participating in the viewport transform.

The application can specify a negative term for height, which has the effect of negating the y coordinate in clip space before performing the transform. When using a negative height, the application should also adjust the y value to point to the lower left corner of the viewport instead of the upper left corner. Using the negative height allows the application to avoid having to negate the y component of the Position output from the last pre-rasterization shader stage.

The width and height of the implementation-dependent maximum viewport dimensions must be greater than or equal to the width and height of the largest image which can be created and attached to a framebuffer.

The floating-point viewport bounds are represented with an implementation-dependent precision.

Valid Usage

  • width must be greater than 0.0
  • width must be less than or equal to PhysicalDeviceLimits::maxViewportDimensions[0]
  • If the VK_KHR_maintenance1 extension is not enabled, the VK_AMD_negative_viewport_height extension is not enabled, and PhysicalDeviceProperties::apiVersion is less than Vulkan 1.1, height must be greater than 0.0
  • The absolute value of height must be less than or equal to PhysicalDeviceLimits::maxViewportDimensions[1]
  • x must be greater than or equal to viewportBoundsRange[0]
  • (x + width) must be less than or equal to viewportBoundsRange[1]
  • y must be greater than or equal to viewportBoundsRange[0]
  • y must be less than or equal to viewportBoundsRange[1]
  • (y + height) must be greater than or equal to viewportBoundsRange[0]
  • (y + height) must be less than or equal to viewportBoundsRange[1]
  • If the VK_EXT_depth_range_unrestricted extension is not enabled, minDepth must be between 0.0 and 1.0, inclusive
  • If the VK_EXT_depth_range_unrestricted extension is not enabled, maxDepth must be between 0.0 and 1.0, inclusive

See Also

VK_VERSION_1_0, CommandBufferInheritanceViewportScissorInfoNV, PipelineViewportStateCreateInfo, cmdSetViewport, cmdSetViewportWithCount, cmdSetViewportWithCountEXT

Constructors

Viewport 

Fields

data SpecializationMapEntry Source #

VkSpecializationMapEntry - Structure specifying a specialization map entry

Description

If a constantID value is not a specialization constant ID used in the shader, that map entry does not affect the behavior of the pipeline.

Valid Usage

  • For a constantID specialization constant declared in a shader, size must match the byte size of the constantID. If the specialization constant is of type boolean, size must be the byte size of Bool32

See Also

VK_VERSION_1_0, SpecializationInfo

Constructors

SpecializationMapEntry 

Fields

  • constantID :: Word32

    constantID is the ID of the specialization constant in SPIR-V.

  • offset :: Word32

    offset is the byte offset of the specialization constant value within the supplied data buffer.

  • size :: Word64

    size is the byte size of the specialization constant value within the supplied data buffer.

Instances

Instances details
Storable SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Eq SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

FromCStruct SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

ToCStruct SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Zero SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data SpecializationInfo Source #

VkSpecializationInfo - Structure specifying specialization information

Valid Usage

  • The offset member of each element of pMapEntries must be less than dataSize
  • The size member of each element of pMapEntries must be less than or equal to dataSize minus offset
  • The constantID value of each element of pMapEntries must be unique within pMapEntries

Valid Usage (Implicit)

  • If mapEntryCount is not 0, pMapEntries must be a valid pointer to an array of mapEntryCount valid SpecializationMapEntry structures
  • If dataSize is not 0, pData must be a valid pointer to an array of dataSize bytes

See Also

VK_VERSION_1_0, PipelineShaderStageCreateInfo, ShaderCreateInfoEXT, SpecializationMapEntry

Constructors

SpecializationInfo 

Fields

data PipelineShaderStageCreateInfo (es :: [Type]) Source #

VkPipelineShaderStageCreateInfo - Structure specifying parameters of a newly created pipeline shader stage

Description

If module is not NULL_HANDLE, the shader code used by the pipeline is defined by module. If module is NULL_HANDLE, the shader code is defined by the chained ShaderModuleCreateInfo if present.

If the shaderModuleIdentifier feature is enabled, applications can omit shader code for stage and instead provide a module identifier. This is done by including a PipelineShaderStageModuleIdentifierCreateInfoEXT struct with identifierSize not equal to 0 in the pNext chain. A shader stage created in this way is equivalent to one created using a shader module with the same identifier. The identifier allows an implementation to look up a pipeline without consuming a valid SPIR-V module. If a pipeline is not found, pipeline compilation is not possible and the implementation must fail as specified by PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT.

When an identifier is used in lieu of a shader module, implementations may fail pipeline compilation with PIPELINE_COMPILE_REQUIRED for any reason.

Note

The rationale for the relaxed requirement on implementations to return a pipeline with PipelineShaderStageModuleIdentifierCreateInfoEXT is that layers or tools may intercept pipeline creation calls and require the full SPIR-V context to operate correctly. ICDs are not expected to fail pipeline compilation if the pipeline exists in a cache somewhere.

Applications can use identifiers when creating pipelines with PIPELINE_CREATE_LIBRARY_BIT_KHR. When creating such pipelines, SUCCESS may be returned, but subsequently fail when referencing the pipeline in a PipelineLibraryCreateInfoKHR struct. Applications must allow pipeline compilation to fail during link steps with PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT as it may not be possible to determine if a pipeline can be created from identifiers until the link step.

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, ComputePipelineCreateInfo, ExecutionGraphPipelineCreateInfoAMDX, GraphicsPipelineCreateInfo, GraphicsShaderGroupCreateInfoNV, PipelineShaderStageCreateFlags, RayTracingPipelineCreateInfoKHR, RayTracingPipelineCreateInfoNV, ShaderModule, ShaderStageFlagBits, SpecializationInfo, StructureType

Constructors

PipelineShaderStageCreateInfo 

Fields

Instances

Instances details
Extensible PipelineShaderStageCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show (Chain es) => Show (PipelineShaderStageCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineShaderStageCreateInfo es, PeekChain es) => FromCStruct (PipelineShaderStageCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineShaderStageCreateInfo es, PokeChain es) => ToCStruct (PipelineShaderStageCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (PipelineShaderStageCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data ComputePipelineCreateInfo (es :: [Type]) Source #

VkComputePipelineCreateInfo - Structure specifying parameters of a newly created compute pipeline

Description

The parameters basePipelineHandle and basePipelineIndex are described in more detail in Pipeline Derivatives.

If a PipelineCreateFlags2CreateInfoKHR structure is present in the pNext chain, PipelineCreateFlags2CreateInfoKHR::flags from that structure is used instead of flags from this structure.

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, Pipeline, PipelineCreateFlags, PipelineLayout, PipelineShaderStageCreateInfo, StructureType, createComputePipelines, getPipelineIndirectMemoryRequirementsNV

Constructors

ComputePipelineCreateInfo 

Fields

Instances

Instances details
Extensible ComputePipelineCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ComputePipelineCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [TYPE LiftedRep]). ComputePipelineCreateInfo ds -> Chain es -> ComputePipelineCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ComputePipelineCreateInfo e => b) -> Maybe b Source #

Show (Chain es) => Show (ComputePipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss ComputePipelineCreateInfo es, PeekChain es) => FromCStruct (ComputePipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss ComputePipelineCreateInfo es, PokeChain es) => ToCStruct (ComputePipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (ComputePipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data VertexInputBindingDescription Source #

VkVertexInputBindingDescription - Structure specifying vertex input binding description

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, PipelineVertexInputStateCreateInfo, VertexInputRate

Constructors

VertexInputBindingDescription 

Fields

  • binding :: Word32

    binding is the binding number that this structure describes.

  • stride :: Word32

    stride is the byte stride between consecutive elements within the buffer.

  • inputRate :: VertexInputRate

    inputRate is a VertexInputRate value specifying whether vertex attribute addressing is a function of the vertex index or of the instance index.

Instances

Instances details
Storable VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Eq VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

FromCStruct VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

ToCStruct VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Zero VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data VertexInputAttributeDescription Source #

VkVertexInputAttributeDescription - Structure specifying vertex input attribute description

Valid Usage

Valid Usage (Implicit)

  • format must be a valid Format value

See Also

VK_VERSION_1_0, Format, PipelineVertexInputStateCreateInfo

Constructors

VertexInputAttributeDescription 

Fields

  • location :: Word32

    location is the shader input location number for this attribute.

  • binding :: Word32

    binding is the binding number which this attribute takes its data from.

  • format :: Format

    format is the size and type of the vertex attribute data.

  • offset :: Word32

    offset is a byte offset of this attribute relative to the start of an element in the vertex input binding.

Instances

Instances details
Storable VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Eq VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

FromCStruct VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

ToCStruct VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Zero VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineVertexInputStateCreateInfo (es :: [Type]) Source #

VkPipelineVertexInputStateCreateInfo - Structure specifying parameters of a newly created pipeline vertex input state

Valid Usage

  • vertexBindingDescriptionCount must be less than or equal to PhysicalDeviceLimits::maxVertexInputBindings
  • vertexAttributeDescriptionCount must be less than or equal to PhysicalDeviceLimits::maxVertexInputAttributes
  • For every binding specified by each element of pVertexAttributeDescriptions, a VertexInputBindingDescription must exist in pVertexBindingDescriptions with the same value of binding
  • All elements of pVertexBindingDescriptions must describe distinct binding numbers
  • All elements of pVertexAttributeDescriptions must describe distinct attribute locations

Valid Usage (Implicit)

  • pNext must be NULL or a pointer to a valid instance of PipelineVertexInputDivisorStateCreateInfoEXT
  • The sType value of each struct in the pNext chain must be unique
  • flags must be 0
  • If vertexBindingDescriptionCount is not 0, pVertexBindingDescriptions must be a valid pointer to an array of vertexBindingDescriptionCount valid VertexInputBindingDescription structures
  • If vertexAttributeDescriptionCount is not 0, pVertexAttributeDescriptions must be a valid pointer to an array of vertexAttributeDescriptionCount valid VertexInputAttributeDescription structures

See Also

VK_VERSION_1_0, GraphicsPipelineCreateInfo, GraphicsShaderGroupCreateInfoNV, PipelineVertexInputStateCreateFlags, StructureType, VertexInputAttributeDescription, VertexInputBindingDescription

Constructors

PipelineVertexInputStateCreateInfo 

Fields

Instances

Instances details
Extensible PipelineVertexInputStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show (Chain es) => Show (PipelineVertexInputStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineVertexInputStateCreateInfo es, PeekChain es) => FromCStruct (PipelineVertexInputStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineVertexInputStateCreateInfo es, PokeChain es) => ToCStruct (PipelineVertexInputStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (PipelineVertexInputStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineInputAssemblyStateCreateInfo Source #

VkPipelineInputAssemblyStateCreateInfo - Structure specifying parameters of a newly created pipeline input assembly state

Description

Restarting the assembly of primitives discards the most recent index values if those elements formed an incomplete primitive, and restarts the primitive assembly using the subsequent indices, but only assembling the immediately following element through the end of the originally specified elements. The primitive restart index value comparison is performed before adding the vertexOffset value to the index value.

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, Bool32, GraphicsPipelineCreateInfo, PipelineInputAssemblyStateCreateFlags, PrimitiveTopology, StructureType

Constructors

PipelineInputAssemblyStateCreateInfo 

Fields

Instances

Instances details
Storable PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Eq PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

FromCStruct PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

ToCStruct PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Zero PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineTessellationStateCreateInfo (es :: [Type]) Source #

VkPipelineTessellationStateCreateInfo - Structure specifying parameters of a newly created pipeline tessellation state

Valid Usage

  • patchControlPoints must be greater than zero and less than or equal to PhysicalDeviceLimits::maxTessellationPatchSize

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, GraphicsPipelineCreateInfo, GraphicsShaderGroupCreateInfoNV, PipelineTessellationStateCreateFlags, StructureType

Constructors

PipelineTessellationStateCreateInfo 

Fields

Instances

Instances details
Extensible PipelineTessellationStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show (Chain es) => Show (PipelineTessellationStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineTessellationStateCreateInfo es, PeekChain es) => FromCStruct (PipelineTessellationStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineTessellationStateCreateInfo es, PokeChain es) => ToCStruct (PipelineTessellationStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (PipelineTessellationStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineViewportStateCreateInfo (es :: [Type]) Source #

VkPipelineViewportStateCreateInfo - Structure specifying parameters of a newly created pipeline viewport state

Valid Usage

  • If the multiViewport feature is not enabled, viewportCount must not be greater than 1
  • If the multiViewport feature is not enabled, scissorCount must not be greater than 1
  • viewportCount must be less than or equal to PhysicalDeviceLimits::maxViewports
  • scissorCount must be less than or equal to PhysicalDeviceLimits::maxViewports
  • The x and y members of offset member of any element of pScissors must be greater than or equal to 0
  • Evaluation of (offset.x + extent.width) must not cause a signed integer addition overflow for any element of pScissors
  • Evaluation of (offset.y + extent.height) must not cause a signed integer addition overflow for any element of pScissors
  • If scissorCount and viewportCount are both not dynamic, then scissorCount and viewportCount must be identical
  • If the graphics pipeline is being created with DYNAMIC_STATE_VIEWPORT_WITH_COUNT set then viewportCount must be 0, otherwise it must be greater than 0
  • If the graphics pipeline is being created with DYNAMIC_STATE_SCISSOR_WITH_COUNT set then scissorCount must be 0, otherwise it must be greater than 0
  • If the viewportWScalingEnable member of a PipelineViewportWScalingStateCreateInfoNV structure included in the pNext chain is TRUE, the viewportCount member of the PipelineViewportWScalingStateCreateInfoNV structure must be greater than or equal to PipelineViewportStateCreateInfo::viewportCount

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, GraphicsPipelineCreateInfo, PipelineViewportStateCreateFlags, Rect2D, StructureType, Viewport

Constructors

PipelineViewportStateCreateInfo 

Fields

Instances

Instances details
Extensible PipelineViewportStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show (Chain es) => Show (PipelineViewportStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineViewportStateCreateInfo es, PeekChain es) => FromCStruct (PipelineViewportStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineViewportStateCreateInfo es, PokeChain es) => ToCStruct (PipelineViewportStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (PipelineViewportStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineRasterizationStateCreateInfo (es :: [Type]) Source #

VkPipelineRasterizationStateCreateInfo - Structure specifying parameters of a newly created pipeline rasterization state

Description

The application can also add a PipelineRasterizationStateRasterizationOrderAMD structure to the pNext chain of a PipelineRasterizationStateCreateInfo structure. This structure enables selecting the rasterization order to use when rendering with the corresponding graphics pipeline as described in Rasterization Order.

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, Bool32, CullModeFlags, FrontFace, GraphicsPipelineCreateInfo, PipelineRasterizationStateCreateFlags, PolygonMode, StructureType

Constructors

PipelineRasterizationStateCreateInfo 

Fields

Instances

Instances details
Extensible PipelineRasterizationStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show (Chain es) => Show (PipelineRasterizationStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineRasterizationStateCreateInfo es, PeekChain es) => FromCStruct (PipelineRasterizationStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineRasterizationStateCreateInfo es, PokeChain es) => ToCStruct (PipelineRasterizationStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (PipelineRasterizationStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineMultisampleStateCreateInfo (es :: [Type]) Source #

VkPipelineMultisampleStateCreateInfo - Structure specifying parameters of a newly created pipeline multisample state

Description

Each bit in the sample mask is associated with a unique sample index as defined for the coverage mask. Each bit b for mask word w in the sample mask corresponds to sample index i, where i = 32 × w + b. pSampleMask has a length equal to ⌈ rasterizationSamples / 32 ⌉ words.

If pSampleMask is NULL, it is treated as if the mask has all bits set to 1.

Valid Usage

  • If the alphaToOne feature is not enabled, alphaToOneEnable must be FALSE
  • minSampleShading must be in the range [0,1]
  • If the VK_NV_framebuffer_mixed_samples extension is enabled, and if the subpass has any color attachments and rasterizationSamples is greater than the number of color samples, then sampleShadingEnable must be FALSE

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, Bool32, GraphicsPipelineCreateInfo, PipelineMultisampleStateCreateFlags, SampleCountFlagBits, SampleMask, StructureType

Constructors

PipelineMultisampleStateCreateInfo 

Fields

Instances

Instances details
Extensible PipelineMultisampleStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show (Chain es) => Show (PipelineMultisampleStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineMultisampleStateCreateInfo es, PeekChain es) => FromCStruct (PipelineMultisampleStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineMultisampleStateCreateInfo es, PokeChain es) => ToCStruct (PipelineMultisampleStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (PipelineMultisampleStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineColorBlendAttachmentState Source #

VkPipelineColorBlendAttachmentState - Structure specifying a pipeline color blend attachment state

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, BlendFactor, BlendOp, Bool32, ColorComponentFlags, PipelineColorBlendStateCreateInfo

Constructors

PipelineColorBlendAttachmentState 

Fields

Instances

Instances details
Storable PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Eq PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

FromCStruct PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

ToCStruct PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Zero PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineColorBlendStateCreateInfo (es :: [Type]) Source #

VkPipelineColorBlendStateCreateInfo - Structure specifying parameters of a newly created pipeline color blend state

Valid Usage

  • If the independentBlend feature is not enabled, all elements of pAttachments must be identical

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, Bool32, GraphicsPipelineCreateInfo, LogicOp, PipelineColorBlendAttachmentState, PipelineColorBlendStateCreateFlags, StructureType

Constructors

PipelineColorBlendStateCreateInfo 

Fields

Instances

Instances details
Extensible PipelineColorBlendStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show (Chain es) => Show (PipelineColorBlendStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineColorBlendStateCreateInfo es, PeekChain es) => FromCStruct (PipelineColorBlendStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss PipelineColorBlendStateCreateInfo es, PokeChain es) => ToCStruct (PipelineColorBlendStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (PipelineColorBlendStateCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineDynamicStateCreateInfo Source #

VkPipelineDynamicStateCreateInfo - Structure specifying parameters of a newly created pipeline dynamic state

Valid Usage

  • Each element of pDynamicStates must be unique

Valid Usage (Implicit)

  • pNext must be NULL
  • flags must be 0
  • If dynamicStateCount is not 0, pDynamicStates must be a valid pointer to an array of dynamicStateCount valid DynamicState values

See Also

VK_VERSION_1_0, DynamicState, GraphicsPipelineCreateInfo, PipelineDynamicStateCreateFlags, RayTracingPipelineCreateInfoKHR, StructureType

Constructors

PipelineDynamicStateCreateInfo 

Fields

data StencilOpState Source #

VkStencilOpState - Structure specifying stencil operation state

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, CompareOp, PipelineDepthStencilStateCreateInfo, StencilOp

Constructors

StencilOpState 

Fields

  • failOp :: StencilOp

    failOp is a StencilOp value specifying the action performed on samples that fail the stencil test.

    failOp must be a valid StencilOp value

  • passOp :: StencilOp

    passOp is a StencilOp value specifying the action performed on samples that pass both the depth and stencil tests.

    passOp must be a valid StencilOp value

  • depthFailOp :: StencilOp

    depthFailOp is a StencilOp value specifying the action performed on samples that pass the stencil test and fail the depth test.

    depthFailOp must be a valid StencilOp value

  • compareOp :: CompareOp

    compareOp is a CompareOp value specifying the comparison operator used in the stencil test.

    compareOp must be a valid CompareOp value

  • compareMask :: Word32

    compareMask selects the bits of the unsigned integer stencil values participating in the stencil test.

  • writeMask :: Word32

    writeMask selects the bits of the unsigned integer stencil values updated by the stencil test in the stencil framebuffer attachment.

  • reference :: Word32

    reference is an integer stencil reference value that is used in the unsigned stencil comparison.

Instances

Instances details
Storable StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Eq StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

FromCStruct StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

ToCStruct StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Zero StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data PipelineDepthStencilStateCreateInfo Source #

VkPipelineDepthStencilStateCreateInfo - Structure specifying parameters of a newly created pipeline depth stencil state

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, Bool32, CompareOp, GraphicsPipelineCreateInfo, PipelineDepthStencilStateCreateFlags, StencilOpState, StructureType

Constructors

PipelineDepthStencilStateCreateInfo 

Fields

Instances

Instances details
Storable PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Show PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

FromCStruct PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

ToCStruct PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Zero PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

data GraphicsPipelineCreateInfo (es :: [Type]) Source #

VkGraphicsPipelineCreateInfo - Structure specifying parameters of a newly created graphics pipeline

Description

The parameters basePipelineHandle and basePipelineIndex are described in more detail in Pipeline Derivatives.

If any shader stage fails to compile, the compile log will be reported back to the application, and ERROR_INVALID_SHADER_NV will be generated.

Note

With VK_EXT_extended_dynamic_state3, it is possible that many of the GraphicsPipelineCreateInfo members above can be NULL because all their state is dynamic and therefore ignored. This is optional so the application can still use a valid pointer if it needs to set the pNext or flags fields to specify state for other extensions.

The state required for a graphics pipeline is divided into vertex input state, pre-rasterization shader state, fragment shader state, and fragment output state.

Vertex Input State

Vertex input state is defined by:

If this pipeline specifies pre-rasterization state either directly or by including it as a pipeline library and its pStages includes a vertex shader, this state must be specified to create a complete graphics pipeline.

If a pipeline includes GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT in GraphicsPipelineLibraryCreateInfoEXT::flags either explicitly or as a default, and either the conditions requiring this state for a complete graphics pipeline are met or this pipeline does not specify pre-rasterization state in any way, that pipeline must specify this state directly.

Pre-Rasterization Shader State

Pre-rasterization shader state is defined by:

This state must be specified to create a complete graphics pipeline.

If either the pNext chain includes a GraphicsPipelineLibraryCreateInfoEXT structure with GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT included in flags, or it is not specified and would default to include that value, this state must be specified in the pipeline.

Fragment Shader State

Fragment shader state is defined by:

If a pipeline specifies pre-rasterization state either directly or by including it as a pipeline library and rasterizerDiscardEnable is set to FALSE or DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE is used, this state must be specified to create a complete graphics pipeline.

If a pipeline includes GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT in GraphicsPipelineLibraryCreateInfoEXT::flags either explicitly or as a default, and either the conditions requiring this state for a complete graphics pipeline are met or this pipeline does not specify pre-rasterization state in any way, that pipeline must specify this state directly.

Fragment Output State

Fragment output state is defined by:

If a pipeline specifies pre-rasterization state either directly or by including it as a pipeline library and rasterizerDiscardEnable is set to FALSE or DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE is used, this state must be specified to create a complete graphics pipeline.

If a pipeline includes GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT in GraphicsPipelineLibraryCreateInfoEXT::flags either explicitly or as a default, and either the conditions requiring this state for a complete graphics pipeline are met or this pipeline does not specify pre-rasterization state in any way, that pipeline must specify this state directly.

Dynamic State

Dynamic state values set via pDynamicState must be ignored if the state they correspond to is not otherwise statically set by one of the state subsets used to create the pipeline. Additionally, setting dynamic state values must not modify whether state in a linked library is static or dynamic; this is set and unchangeable when the library is created. For example, if a pipeline only included pre-rasterization shader state, then any dynamic state value corresponding to depth or stencil testing has no effect. Any linked library that has dynamic state enabled that same dynamic state must also be enabled in all the other linked libraries to which that dynamic state applies.

Complete Graphics Pipelines

A complete graphics pipeline always includes pre-rasterization shader state, with other subsets included depending on that state as specified in the above sections.

Graphics Pipeline Library Layouts

If different subsets are linked together with pipeline layouts created with PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, the final effective pipeline layout is effectively the union of the linked pipeline layouts. When binding descriptor sets for this pipeline, the pipeline layout used must be compatible with this union. This pipeline layout can be overridden when linking with PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT by providing a PipelineLayout that is compatible with this union other than PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT, or when linking without PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT by providing a PipelineLayout that is fully compatible with this union.

If a PipelineCreateFlags2CreateInfoKHR structure is present in the pNext chain, PipelineCreateFlags2CreateInfoKHR::flags from that structure is used instead of flags from this structure.

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, Pipeline, PipelineColorBlendStateCreateInfo, PipelineCreateFlags, PipelineDepthStencilStateCreateInfo, PipelineDynamicStateCreateInfo, PipelineInputAssemblyStateCreateInfo, PipelineLayout, PipelineMultisampleStateCreateInfo, PipelineRasterizationStateCreateInfo, PipelineShaderStageCreateInfo, PipelineTessellationStateCreateInfo, PipelineVertexInputStateCreateInfo, PipelineViewportStateCreateInfo, RenderPass, StructureType, createGraphicsPipelines

Constructors

GraphicsPipelineCreateInfo 

Fields

Instances

Instances details
Extensible GraphicsPipelineCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). GraphicsPipelineCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [TYPE LiftedRep]). GraphicsPipelineCreateInfo ds -> Chain es -> GraphicsPipelineCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends GraphicsPipelineCreateInfo e => b) -> Maybe b Source #

Show (Chain es) => Show (GraphicsPipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss GraphicsPipelineCreateInfo es, PeekChain es) => FromCStruct (GraphicsPipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

(Extendss GraphicsPipelineCreateInfo es, PokeChain es) => ToCStruct (GraphicsPipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

es ~ ('[] :: [Type]) => Zero (GraphicsPipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.Pipeline

newtype Pipeline Source #

Constructors

Pipeline Word64 

Instances

Instances details
Storable Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Show Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Eq Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Ord Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

HasObjectType Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

IsHandle Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Zero Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Methods

zero :: Pipeline Source #

newtype PipelineDynamicStateCreateFlags Source #

VkPipelineDynamicStateCreateFlags - Reserved for future use

Description

PipelineDynamicStateCreateFlags is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VK_VERSION_1_0, PipelineDynamicStateCreateInfo

Instances

Instances details
Storable PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Bits PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Methods

(.&.) :: PipelineDynamicStateCreateFlags -> PipelineDynamicStateCreateFlags -> PipelineDynamicStateCreateFlags #

(.|.) :: PipelineDynamicStateCreateFlags -> PipelineDynamicStateCreateFlags -> PipelineDynamicStateCreateFlags #

xor :: PipelineDynamicStateCreateFlags -> PipelineDynamicStateCreateFlags -> PipelineDynamicStateCreateFlags #

complement :: PipelineDynamicStateCreateFlags -> PipelineDynamicStateCreateFlags #

shift :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

rotate :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

zeroBits :: PipelineDynamicStateCreateFlags #

bit :: Int -> PipelineDynamicStateCreateFlags #

setBit :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

clearBit :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

complementBit :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

testBit :: PipelineDynamicStateCreateFlags -> Int -> Bool #

bitSizeMaybe :: PipelineDynamicStateCreateFlags -> Maybe Int #

bitSize :: PipelineDynamicStateCreateFlags -> Int #

isSigned :: PipelineDynamicStateCreateFlags -> Bool #

shiftL :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

unsafeShiftL :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

shiftR :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

unsafeShiftR :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

rotateL :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

rotateR :: PipelineDynamicStateCreateFlags -> Int -> PipelineDynamicStateCreateFlags #

popCount :: PipelineDynamicStateCreateFlags -> Int #

FiniteBits PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Read PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Show PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Eq PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Ord PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Zero PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

newtype PipelineMultisampleStateCreateFlags Source #

VkPipelineMultisampleStateCreateFlags - Reserved for future use

Description

PipelineMultisampleStateCreateFlags is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VK_VERSION_1_0, PipelineMultisampleStateCreateInfo

Instances

Instances details
Storable PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Bits PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Methods

(.&.) :: PipelineMultisampleStateCreateFlags -> PipelineMultisampleStateCreateFlags -> PipelineMultisampleStateCreateFlags #

(.|.) :: PipelineMultisampleStateCreateFlags -> PipelineMultisampleStateCreateFlags -> PipelineMultisampleStateCreateFlags #

xor :: PipelineMultisampleStateCreateFlags -> PipelineMultisampleStateCreateFlags -> PipelineMultisampleStateCreateFlags #

complement :: PipelineMultisampleStateCreateFlags -> PipelineMultisampleStateCreateFlags #

shift :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

rotate :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

zeroBits :: PipelineMultisampleStateCreateFlags #

bit :: Int -> PipelineMultisampleStateCreateFlags #

setBit :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

clearBit :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

complementBit :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

testBit :: PipelineMultisampleStateCreateFlags -> Int -> Bool #

bitSizeMaybe :: PipelineMultisampleStateCreateFlags -> Maybe Int #

bitSize :: PipelineMultisampleStateCreateFlags -> Int #

isSigned :: PipelineMultisampleStateCreateFlags -> Bool #

shiftL :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

unsafeShiftL :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

shiftR :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

unsafeShiftR :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

rotateL :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

rotateR :: PipelineMultisampleStateCreateFlags -> Int -> PipelineMultisampleStateCreateFlags #

popCount :: PipelineMultisampleStateCreateFlags -> Int #

FiniteBits PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Read PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Show PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Eq PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Ord PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Zero PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

newtype PipelineRasterizationStateCreateFlags Source #

VkPipelineRasterizationStateCreateFlags - Reserved for future use

Description

PipelineRasterizationStateCreateFlags is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VK_VERSION_1_0, PipelineRasterizationStateCreateInfo

Instances

Instances details
Storable PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Bits PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Methods

(.&.) :: PipelineRasterizationStateCreateFlags -> PipelineRasterizationStateCreateFlags -> PipelineRasterizationStateCreateFlags #

(.|.) :: PipelineRasterizationStateCreateFlags -> PipelineRasterizationStateCreateFlags -> PipelineRasterizationStateCreateFlags #

xor :: PipelineRasterizationStateCreateFlags -> PipelineRasterizationStateCreateFlags -> PipelineRasterizationStateCreateFlags #

complement :: PipelineRasterizationStateCreateFlags -> PipelineRasterizationStateCreateFlags #

shift :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

rotate :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

zeroBits :: PipelineRasterizationStateCreateFlags #

bit :: Int -> PipelineRasterizationStateCreateFlags #

setBit :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

clearBit :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

complementBit :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

testBit :: PipelineRasterizationStateCreateFlags -> Int -> Bool #

bitSizeMaybe :: PipelineRasterizationStateCreateFlags -> Maybe Int #

bitSize :: PipelineRasterizationStateCreateFlags -> Int #

isSigned :: PipelineRasterizationStateCreateFlags -> Bool #

shiftL :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

unsafeShiftL :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

shiftR :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

unsafeShiftR :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

rotateL :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

rotateR :: PipelineRasterizationStateCreateFlags -> Int -> PipelineRasterizationStateCreateFlags #

popCount :: PipelineRasterizationStateCreateFlags -> Int #

FiniteBits PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Read PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Show PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Eq PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Ord PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Zero PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

newtype PipelineViewportStateCreateFlags Source #

VkPipelineViewportStateCreateFlags - Reserved for future use

Description

PipelineViewportStateCreateFlags is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VK_VERSION_1_0, PipelineViewportStateCreateInfo

Instances

Instances details
Storable PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Bits PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Methods

(.&.) :: PipelineViewportStateCreateFlags -> PipelineViewportStateCreateFlags -> PipelineViewportStateCreateFlags #

(.|.) :: PipelineViewportStateCreateFlags -> PipelineViewportStateCreateFlags -> PipelineViewportStateCreateFlags #

xor :: PipelineViewportStateCreateFlags -> PipelineViewportStateCreateFlags -> PipelineViewportStateCreateFlags #

complement :: PipelineViewportStateCreateFlags -> PipelineViewportStateCreateFlags #

shift :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

rotate :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

zeroBits :: PipelineViewportStateCreateFlags #

bit :: Int -> PipelineViewportStateCreateFlags #

setBit :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

clearBit :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

complementBit :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

testBit :: PipelineViewportStateCreateFlags -> Int -> Bool #

bitSizeMaybe :: PipelineViewportStateCreateFlags -> Maybe Int #

bitSize :: PipelineViewportStateCreateFlags -> Int #

isSigned :: PipelineViewportStateCreateFlags -> Bool #

shiftL :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

unsafeShiftL :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

shiftR :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

unsafeShiftR :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

rotateL :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

rotateR :: PipelineViewportStateCreateFlags -> Int -> PipelineViewportStateCreateFlags #

popCount :: PipelineViewportStateCreateFlags -> Int #

FiniteBits PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Read PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Show PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Eq PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Ord PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Zero PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

newtype PipelineTessellationStateCreateFlags Source #

VkPipelineTessellationStateCreateFlags - Reserved for future use

Description

PipelineTessellationStateCreateFlags is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VK_VERSION_1_0, PipelineTessellationStateCreateInfo

Instances

Instances details
Storable PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Bits PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Methods

(.&.) :: PipelineTessellationStateCreateFlags -> PipelineTessellationStateCreateFlags -> PipelineTessellationStateCreateFlags #

(.|.) :: PipelineTessellationStateCreateFlags -> PipelineTessellationStateCreateFlags -> PipelineTessellationStateCreateFlags #

xor :: PipelineTessellationStateCreateFlags -> PipelineTessellationStateCreateFlags -> PipelineTessellationStateCreateFlags #

complement :: PipelineTessellationStateCreateFlags -> PipelineTessellationStateCreateFlags #

shift :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

rotate :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

zeroBits :: PipelineTessellationStateCreateFlags #

bit :: Int -> PipelineTessellationStateCreateFlags #

setBit :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

clearBit :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

complementBit :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

testBit :: PipelineTessellationStateCreateFlags -> Int -> Bool #

bitSizeMaybe :: PipelineTessellationStateCreateFlags -> Maybe Int #

bitSize :: PipelineTessellationStateCreateFlags -> Int #

isSigned :: PipelineTessellationStateCreateFlags -> Bool #

shiftL :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

unsafeShiftL :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

shiftR :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

unsafeShiftR :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

rotateL :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

rotateR :: PipelineTessellationStateCreateFlags -> Int -> PipelineTessellationStateCreateFlags #

popCount :: PipelineTessellationStateCreateFlags -> Int #

FiniteBits PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Read PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Show PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Eq PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Ord PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Zero PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

newtype PipelineInputAssemblyStateCreateFlags Source #

VkPipelineInputAssemblyStateCreateFlags - Reserved for future use

Description

PipelineInputAssemblyStateCreateFlags is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VK_VERSION_1_0, PipelineInputAssemblyStateCreateInfo

Instances

Instances details
Storable PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Bits PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Methods

(.&.) :: PipelineInputAssemblyStateCreateFlags -> PipelineInputAssemblyStateCreateFlags -> PipelineInputAssemblyStateCreateFlags #

(.|.) :: PipelineInputAssemblyStateCreateFlags -> PipelineInputAssemblyStateCreateFlags -> PipelineInputAssemblyStateCreateFlags #

xor :: PipelineInputAssemblyStateCreateFlags -> PipelineInputAssemblyStateCreateFlags -> PipelineInputAssemblyStateCreateFlags #

complement :: PipelineInputAssemblyStateCreateFlags -> PipelineInputAssemblyStateCreateFlags #

shift :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

rotate :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

zeroBits :: PipelineInputAssemblyStateCreateFlags #

bit :: Int -> PipelineInputAssemblyStateCreateFlags #

setBit :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

clearBit :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

complementBit :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

testBit :: PipelineInputAssemblyStateCreateFlags -> Int -> Bool #

bitSizeMaybe :: PipelineInputAssemblyStateCreateFlags -> Maybe Int #

bitSize :: PipelineInputAssemblyStateCreateFlags -> Int #

isSigned :: PipelineInputAssemblyStateCreateFlags -> Bool #

shiftL :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

unsafeShiftL :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

shiftR :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

unsafeShiftR :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

rotateL :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

rotateR :: PipelineInputAssemblyStateCreateFlags -> Int -> PipelineInputAssemblyStateCreateFlags #

popCount :: PipelineInputAssemblyStateCreateFlags -> Int #

FiniteBits PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Read PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Show PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Eq PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Ord PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Zero PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

newtype PipelineVertexInputStateCreateFlags Source #

VkPipelineVertexInputStateCreateFlags - Reserved for future use

Description

PipelineVertexInputStateCreateFlags is a bitmask type for setting a mask, but is currently reserved for future use.

See Also

VK_VERSION_1_0, PipelineVertexInputStateCreateInfo

Instances

Instances details
Storable PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Bits PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Methods

(.&.) :: PipelineVertexInputStateCreateFlags -> PipelineVertexInputStateCreateFlags -> PipelineVertexInputStateCreateFlags #

(.|.) :: PipelineVertexInputStateCreateFlags -> PipelineVertexInputStateCreateFlags -> PipelineVertexInputStateCreateFlags #

xor :: PipelineVertexInputStateCreateFlags -> PipelineVertexInputStateCreateFlags -> PipelineVertexInputStateCreateFlags #

complement :: PipelineVertexInputStateCreateFlags -> PipelineVertexInputStateCreateFlags #

shift :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

rotate :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

zeroBits :: PipelineVertexInputStateCreateFlags #

bit :: Int -> PipelineVertexInputStateCreateFlags #

setBit :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

clearBit :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

complementBit :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

testBit :: PipelineVertexInputStateCreateFlags -> Int -> Bool #

bitSizeMaybe :: PipelineVertexInputStateCreateFlags -> Maybe Int #

bitSize :: PipelineVertexInputStateCreateFlags -> Int #

isSigned :: PipelineVertexInputStateCreateFlags -> Bool #

shiftL :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

unsafeShiftL :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

shiftR :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

unsafeShiftR :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

rotateL :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

rotateR :: PipelineVertexInputStateCreateFlags -> Int -> PipelineVertexInputStateCreateFlags #

popCount :: PipelineVertexInputStateCreateFlags -> Int #

FiniteBits PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Read PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Show PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Eq PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Ord PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Zero PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

newtype PrimitiveTopology Source #

VkPrimitiveTopology - Supported primitive topologies

Description

Each primitive topology, and its construction from a list of vertices, is described in detail below with a supporting diagram, according to the following key:

VertexA point in 3-dimensional space. Positions chosen within the diagrams are arbitrary and for illustration only.
Vertex NumberSequence position of a vertex within the provided vertex data.
Provoking VertexProvoking vertex within the main primitive. The tail is angled towards the relevant primitive. Used in flat shading.
Primitive EdgeAn edge connecting the points of a main primitive.
Adjacency EdgePoints connected by these lines do not contribute to a main primitive, and are only accessible in a geometry shader.
Winding Order The relative order in which vertices are defined within a primitive, used in the facing determination. This ordering has no specific start or end point.

The diagrams are supported with mathematical definitions where the vertices (v) and primitives (p) are numbered starting from 0; v0 is the first vertex in the provided data and p0 is the first primitive in the set of primitives defined by the vertices and topology.

See Also

VK_VERSION_1_0, PipelineInputAssemblyStateCreateInfo, cmdSetPrimitiveTopology, cmdSetPrimitiveTopologyEXT

Constructors

PrimitiveTopology Int32 

Bundled Patterns

pattern PRIMITIVE_TOPOLOGY_POINT_LIST :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_POINT_LIST specifies a series of separate point primitives.

pattern PRIMITIVE_TOPOLOGY_LINE_LIST :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_LINE_LIST specifies a series of separate line primitives.

pattern PRIMITIVE_TOPOLOGY_LINE_STRIP :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_LINE_STRIP specifies a series of connected line primitives with consecutive lines sharing a vertex.

pattern PRIMITIVE_TOPOLOGY_TRIANGLE_LIST :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_TRIANGLE_LIST specifies a series of separate triangle primitives.

pattern PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP specifies a series of connected triangle primitives with consecutive triangles sharing an edge.

pattern PRIMITIVE_TOPOLOGY_TRIANGLE_FAN :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_TRIANGLE_FAN specifies a series of connected triangle primitives with all triangles sharing a common vertex. If the VK_KHR_portability_subset extension is enabled, and PhysicalDevicePortabilitySubsetFeaturesKHR::triangleFans is FALSE, then triangle fans are not supported by the implementation, and PRIMITIVE_TOPOLOGY_TRIANGLE_FAN must not be used.

pattern PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY specifies a series of separate line primitives with adjacency.

pattern PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY specifies a series of connected line primitives with adjacency, with consecutive primitives sharing three vertices.

pattern PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY specifies a series of separate triangle primitives with adjacency.

pattern PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY specifies connected triangle primitives with adjacency, with consecutive triangles sharing an edge.

pattern PRIMITIVE_TOPOLOGY_PATCH_LIST :: PrimitiveTopology

PRIMITIVE_TOPOLOGY_PATCH_LIST specifies separate patch primitives.

Instances

Instances details
Storable PrimitiveTopology Source # 
Instance details

Defined in Vulkan.Core10.Enums.PrimitiveTopology

Read PrimitiveTopology Source # 
Instance details

Defined in Vulkan.Core10.Enums.PrimitiveTopology

Show PrimitiveTopology Source # 
Instance details

Defined in Vulkan.Core10.Enums.PrimitiveTopology

Eq PrimitiveTopology Source # 
Instance details

Defined in Vulkan.Core10.Enums.PrimitiveTopology

Ord PrimitiveTopology Source # 
Instance details

Defined in Vulkan.Core10.Enums.PrimitiveTopology

Zero PrimitiveTopology Source # 
Instance details

Defined in Vulkan.Core10.Enums.PrimitiveTopology

newtype CompareOp Source #

VkCompareOp - Comparison operator for depth, stencil, and sampler operations

Description

Comparison operators are used for:

Each such use describes how the reference and test values for that comparison are determined.

See Also

VK_VERSION_1_0, PipelineDepthStencilStateCreateInfo, SamplerCreateInfo, StencilOpState, cmdSetDepthCompareOp, cmdSetDepthCompareOpEXT, cmdSetStencilOp, cmdSetStencilOpEXT

Constructors

CompareOp Int32 

Instances

Instances details
Storable CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

Read CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

Show CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

Eq CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

Ord CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

Zero CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

newtype PolygonMode Source #

VkPolygonMode - Control polygon rasterization mode

Description

These modes affect only the final rasterization of polygons: in particular, a polygon’s vertices are shaded and the polygon is clipped and possibly culled before these modes are applied.

If PhysicalDeviceMaintenance5PropertiesKHR::polygonModePointSize is set to TRUE, the point size of the final rasterization of polygons is taken from PointSize when polygon mode is POLYGON_MODE_POINT.

Otherwise, if PhysicalDeviceMaintenance5PropertiesKHR::polygonModePointSize is set to FALSE, the point size of the final rasterization of polygons is 1.0 when polygon mode is POLYGON_MODE_POINT.

See Also

VK_VERSION_1_0, PipelineRasterizationStateCreateInfo, cmdSetPolygonModeEXT

Constructors

PolygonMode Int32 

Bundled Patterns

pattern POLYGON_MODE_FILL :: PolygonMode

POLYGON_MODE_FILL specifies that polygons are rendered using the polygon rasterization rules in this section.

pattern POLYGON_MODE_LINE :: PolygonMode

POLYGON_MODE_LINE specifies that polygon edges are drawn as line segments.

pattern POLYGON_MODE_POINT :: PolygonMode

POLYGON_MODE_POINT specifies that polygon vertices are drawn as points.

pattern POLYGON_MODE_FILL_RECTANGLE_NV :: PolygonMode

POLYGON_MODE_FILL_RECTANGLE_NV specifies that polygons are rendered using polygon rasterization rules, modified to consider a sample within the primitive if the sample location is inside the axis-aligned bounding box of the triangle after projection. Note that the barycentric weights used in attribute interpolation can extend outside the range [0,1] when these primitives are shaded. Special treatment is given to a sample position on the boundary edge of the bounding box. In such a case, if two rectangles lie on either side of a common edge (with identical endpoints) on which a sample position lies, then exactly one of the triangles must produce a fragment that covers that sample during rasterization.

Polygons rendered in POLYGON_MODE_FILL_RECTANGLE_NV mode may be clipped by the frustum or by user clip planes. If clipping is applied, the triangle is culled rather than clipped.

Area calculation and facingness are determined for POLYGON_MODE_FILL_RECTANGLE_NV mode using the triangle’s vertices.

Instances

Instances details
Storable PolygonMode Source # 
Instance details

Defined in Vulkan.Core10.Enums.PolygonMode

Read PolygonMode Source # 
Instance details

Defined in Vulkan.Core10.Enums.PolygonMode

Show PolygonMode Source # 
Instance details

Defined in Vulkan.Core10.Enums.PolygonMode

Eq PolygonMode Source # 
Instance details

Defined in Vulkan.Core10.Enums.PolygonMode

Ord PolygonMode Source # 
Instance details

Defined in Vulkan.Core10.Enums.PolygonMode

Zero PolygonMode Source # 
Instance details

Defined in Vulkan.Core10.Enums.PolygonMode

newtype FrontFace Source #

VkFrontFace - Interpret polygon front-facing orientation

Description

Any triangle which is not front-facing is back-facing, including zero-area triangles.

See Also

VK_VERSION_1_0, PipelineRasterizationStateCreateInfo, cmdSetFrontFace, cmdSetFrontFaceEXT

Constructors

FrontFace Int32 

Bundled Patterns

pattern FRONT_FACE_COUNTER_CLOCKWISE :: FrontFace

FRONT_FACE_COUNTER_CLOCKWISE specifies that a triangle with positive area is considered front-facing.

pattern FRONT_FACE_CLOCKWISE :: FrontFace

FRONT_FACE_CLOCKWISE specifies that a triangle with negative area is considered front-facing.

Instances

Instances details
Storable FrontFace Source # 
Instance details

Defined in Vulkan.Core10.Enums.FrontFace

Read FrontFace Source # 
Instance details

Defined in Vulkan.Core10.Enums.FrontFace

Show FrontFace Source # 
Instance details

Defined in Vulkan.Core10.Enums.FrontFace

Eq FrontFace Source # 
Instance details

Defined in Vulkan.Core10.Enums.FrontFace

Ord FrontFace Source # 
Instance details

Defined in Vulkan.Core10.Enums.FrontFace

Zero FrontFace Source # 
Instance details

Defined in Vulkan.Core10.Enums.FrontFace

newtype BlendFactor Source #

VkBlendFactor - Framebuffer blending factors

Description

The semantics of the enum values are described in the table below:

BlendFactor RGB Blend Factors (Sr,Sg,Sb) or (Dr,Dg,Db) Alpha Blend Factor (Sa or Da)
BLEND_FACTOR_ZERO(0,0,0)0
BLEND_FACTOR_ONE(1,1,1)1
BLEND_FACTOR_SRC_COLOR(Rs0,Gs0,Bs0)As0
BLEND_FACTOR_ONE_MINUS_SRC_COLOR(1-Rs0,1-Gs0,1-Bs0)1-As0
BLEND_FACTOR_DST_COLOR(Rd,Gd,Bd)Ad
BLEND_FACTOR_ONE_MINUS_DST_COLOR(1-Rd,1-Gd,1-Bd)1-Ad
BLEND_FACTOR_SRC_ALPHA(As0,As0,As0)As0
BLEND_FACTOR_ONE_MINUS_SRC_ALPHA(1-As0,1-As0,1-As0)1-As0
BLEND_FACTOR_DST_ALPHA(Ad,Ad,Ad)Ad
BLEND_FACTOR_ONE_MINUS_DST_ALPHA(1-Ad,1-Ad,1-Ad)1-Ad
BLEND_FACTOR_CONSTANT_COLOR(Rc,Gc,Bc)Ac
BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR(1-Rc,1-Gc,1-Bc)1-Ac
BLEND_FACTOR_CONSTANT_ALPHA(Ac,Ac,Ac)Ac
BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA(1-Ac,1-Ac,1-Ac)1-Ac
BLEND_FACTOR_SRC_ALPHA_SATURATE (f,f,f); f = min(As0,1-Ad)1
BLEND_FACTOR_SRC1_COLOR(Rs1,Gs1,Bs1)As1
BLEND_FACTOR_ONE_MINUS_SRC1_COLOR(1-Rs1,1-Gs1,1-Bs1)1-As1
BLEND_FACTOR_SRC1_ALPHA(As1,As1,As1)As1
BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA(1-As1,1-As1,1-As1)1-As1

Blend Factors

In this table, the following conventions are used:

  • Rs0,Gs0,Bs0 and As0 represent the first source color R, G, B, and A components, respectively, for the fragment output location corresponding to the color attachment being blended.
  • Rs1,Gs1,Bs1 and As1 represent the second source color R, G, B, and A components, respectively, used in dual source blending modes, for the fragment output location corresponding to the color attachment being blended.
  • Rd,Gd,Bd and Ad represent the R, G, B, and A components of the destination color. That is, the color currently in the corresponding color attachment for this fragment/sample.
  • Rc,Gc,Bc and Ac represent the blend constant R, G, B, and A components, respectively.

See Also

VK_VERSION_1_0, ColorBlendEquationEXT, PipelineColorBlendAttachmentState

Constructors

BlendFactor Int32 

Instances

Instances details
Storable BlendFactor Source # 
Instance details

Defined in Vulkan.Core10.Enums.BlendFactor

Read BlendFactor Source # 
Instance details

Defined in Vulkan.Core10.Enums.BlendFactor

Show BlendFactor Source # 
Instance details

Defined in Vulkan.Core10.Enums.BlendFactor

Eq BlendFactor Source # 
Instance details

Defined in Vulkan.Core10.Enums.BlendFactor

Ord BlendFactor Source # 
Instance details

Defined in Vulkan.Core10.Enums.BlendFactor

Zero BlendFactor Source # 
Instance details

Defined in Vulkan.Core10.Enums.BlendFactor

newtype BlendOp Source #

VkBlendOp - Framebuffer blending operations

Description

The semantics of the basic blend operations are described in the table below:

BlendOpRGB ComponentsAlpha Component
BLEND_OP_ADD R = Rs0 × Sr + Rd × Dr G = Gs0 × Sg + Gd × Dg B = Bs0 × Sb + Bd × DbA = As0 × Sa + Ad × Da
BLEND_OP_SUBTRACT R = Rs0 × Sr - Rd × Dr G = Gs0 × Sg - Gd × Dg B = Bs0 × Sb - Bd × DbA = As0 × Sa - Ad × Da
BLEND_OP_REVERSE_SUBTRACT R = Rd × Dr - Rs0 × Sr G = Gd × Dg - Gs0 × Sg B = Bd × Db - Bs0 × SbA = Ad × Da - As0 × Sa
BLEND_OP_MIN R = min(Rs0,Rd) G = min(Gs0,Gd) B = min(Bs0,Bd)A = min(As0,Ad)
BLEND_OP_MAX R = max(Rs0,Rd) G = max(Gs0,Gd) B = max(Bs0,Bd)A = max(As0,Ad)

Basic Blend Operations

In this table, the following conventions are used:

  • Rs0, Gs0, Bs0 and As0 represent the first source color R, G, B, and A components, respectively.
  • Rd, Gd, Bd and Ad represent the R, G, B, and A components of the destination color. That is, the color currently in the corresponding color attachment for this fragment/sample.
  • Sr, Sg, Sb and Sa represent the source blend factor R, G, B, and A components, respectively.
  • Dr, Dg, Db and Da represent the destination blend factor R, G, B, and A components, respectively.

The blending operation produces a new set of values R, G, B and A, which are written to the framebuffer attachment. If blending is not enabled for this attachment, then R, G, B and A are assigned Rs0, Gs0, Bs0 and As0, respectively.

If the color attachment is fixed-point, the components of the source and destination values and blend factors are each clamped to [0,1] or [-1,1] respectively for an unsigned normalized or signed normalized color attachment prior to evaluating the blend operations. If the color attachment is floating-point, no clamping occurs.

See Also

VK_VERSION_1_0, ColorBlendAdvancedEXT, ColorBlendEquationEXT, PipelineColorBlendAttachmentState

Constructors

BlendOp Int32 

Bundled Patterns

pattern BLEND_OP_ADD :: BlendOp 
pattern BLEND_OP_SUBTRACT :: BlendOp 
pattern BLEND_OP_REVERSE_SUBTRACT :: BlendOp 
pattern BLEND_OP_MIN :: BlendOp 
pattern BLEND_OP_MAX :: BlendOp 
pattern BLEND_OP_BLUE_EXT :: BlendOp 
pattern BLEND_OP_GREEN_EXT :: BlendOp 
pattern BLEND_OP_RED_EXT :: BlendOp 
pattern BLEND_OP_INVERT_OVG_EXT :: BlendOp 
pattern BLEND_OP_CONTRAST_EXT :: BlendOp 
pattern BLEND_OP_MINUS_CLAMPED_EXT :: BlendOp 
pattern BLEND_OP_MINUS_EXT :: BlendOp 
pattern BLEND_OP_PLUS_DARKER_EXT :: BlendOp 
pattern BLEND_OP_PLUS_CLAMPED_ALPHA_EXT :: BlendOp 
pattern BLEND_OP_PLUS_CLAMPED_EXT :: BlendOp 
pattern BLEND_OP_PLUS_EXT :: BlendOp 
pattern BLEND_OP_HSL_LUMINOSITY_EXT :: BlendOp 
pattern BLEND_OP_HSL_COLOR_EXT :: BlendOp 
pattern BLEND_OP_HSL_SATURATION_EXT :: BlendOp 
pattern BLEND_OP_HSL_HUE_EXT :: BlendOp 
pattern BLEND_OP_HARDMIX_EXT :: BlendOp 
pattern BLEND_OP_PINLIGHT_EXT :: BlendOp 
pattern BLEND_OP_LINEARLIGHT_EXT :: BlendOp 
pattern BLEND_OP_VIVIDLIGHT_EXT :: BlendOp 
pattern BLEND_OP_LINEARBURN_EXT :: BlendOp 
pattern BLEND_OP_LINEARDODGE_EXT :: BlendOp 
pattern BLEND_OP_INVERT_RGB_EXT :: BlendOp 
pattern BLEND_OP_INVERT_EXT :: BlendOp 
pattern BLEND_OP_EXCLUSION_EXT :: BlendOp 
pattern BLEND_OP_DIFFERENCE_EXT :: BlendOp 
pattern BLEND_OP_SOFTLIGHT_EXT :: BlendOp 
pattern BLEND_OP_HARDLIGHT_EXT :: BlendOp 
pattern BLEND_OP_COLORBURN_EXT :: BlendOp 
pattern BLEND_OP_COLORDODGE_EXT :: BlendOp 
pattern BLEND_OP_LIGHTEN_EXT :: BlendOp 
pattern BLEND_OP_DARKEN_EXT :: BlendOp 
pattern BLEND_OP_OVERLAY_EXT :: BlendOp 
pattern BLEND_OP_SCREEN_EXT :: BlendOp 
pattern BLEND_OP_MULTIPLY_EXT :: BlendOp 
pattern BLEND_OP_XOR_EXT :: BlendOp 
pattern BLEND_OP_DST_ATOP_EXT :: BlendOp 
pattern BLEND_OP_SRC_ATOP_EXT :: BlendOp 
pattern BLEND_OP_DST_OUT_EXT :: BlendOp 
pattern BLEND_OP_SRC_OUT_EXT :: BlendOp 
pattern BLEND_OP_DST_IN_EXT :: BlendOp 
pattern BLEND_OP_SRC_IN_EXT :: BlendOp 
pattern BLEND_OP_DST_OVER_EXT :: BlendOp 
pattern BLEND_OP_SRC_OVER_EXT :: BlendOp 
pattern BLEND_OP_DST_EXT :: BlendOp 
pattern BLEND_OP_SRC_EXT :: BlendOp 
pattern BLEND_OP_ZERO_EXT :: BlendOp 

newtype StencilOp Source #

VkStencilOp - Stencil comparison function

Description

For purposes of increment and decrement, the stencil bits are considered as an unsigned integer.

See Also

VK_VERSION_1_0, StencilOpState, cmdSetStencilOp, cmdSetStencilOpEXT

Constructors

StencilOp Int32 

Bundled Patterns

pattern STENCIL_OP_KEEP :: StencilOp

STENCIL_OP_KEEP keeps the current value.

pattern STENCIL_OP_ZERO :: StencilOp

STENCIL_OP_ZERO sets the value to 0.

pattern STENCIL_OP_REPLACE :: StencilOp

STENCIL_OP_REPLACE sets the value to reference.

pattern STENCIL_OP_INCREMENT_AND_CLAMP :: StencilOp

STENCIL_OP_INCREMENT_AND_CLAMP increments the current value and clamps to the maximum representable unsigned value.

pattern STENCIL_OP_DECREMENT_AND_CLAMP :: StencilOp

STENCIL_OP_DECREMENT_AND_CLAMP decrements the current value and clamps to 0.

pattern STENCIL_OP_INVERT :: StencilOp

STENCIL_OP_INVERT bitwise-inverts the current value.

pattern STENCIL_OP_INCREMENT_AND_WRAP :: StencilOp

STENCIL_OP_INCREMENT_AND_WRAP increments the current value and wraps to 0 when the maximum value would have been exceeded.

pattern STENCIL_OP_DECREMENT_AND_WRAP :: StencilOp

STENCIL_OP_DECREMENT_AND_WRAP decrements the current value and wraps to the maximum possible value when the value would go below 0.

Instances

Instances details
Storable StencilOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.StencilOp

Read StencilOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.StencilOp

Show StencilOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.StencilOp

Eq StencilOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.StencilOp

Ord StencilOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.StencilOp

Zero StencilOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.StencilOp

newtype LogicOp Source #

VkLogicOp - Framebuffer logical operations

Description

The logical operations supported by Vulkan are summarized in the following table in which

  • ¬ is bitwise invert,
  • ∧ is bitwise and,
  • ∨ is bitwise or,
  • ⊕ is bitwise exclusive or,
  • s is the fragment’s Rs0, Gs0, Bs0 or As0 component value for the fragment output corresponding to the color attachment being updated, and
  • d is the color attachment’s R, G, B or A component value:
ModeOperation
LOGIC_OP_CLEAR0
LOGIC_OP_ANDs ∧ d
LOGIC_OP_AND_REVERSEs ∧ ¬ d
LOGIC_OP_COPYs
LOGIC_OP_AND_INVERTED¬ s ∧ d
LOGIC_OP_NO_OPd
LOGIC_OP_XORs ⊕ d
LOGIC_OP_ORs ∨ d
LOGIC_OP_NOR¬ (s ∨ d)
LOGIC_OP_EQUIVALENT¬ (s ⊕ d)
LOGIC_OP_INVERT¬ d
LOGIC_OP_OR_REVERSEs ∨ ¬ d
LOGIC_OP_COPY_INVERTED¬ s
LOGIC_OP_OR_INVERTED¬ s ∨ d
LOGIC_OP_NAND¬ (s ∧ d)
LOGIC_OP_SETall 1s

Logical Operations

The result of the logical operation is then written to the color attachment as controlled by the component write mask, described in Blend Operations.

See Also

VK_VERSION_1_0, PipelineColorBlendStateCreateInfo, cmdSetLogicOpEXT

Constructors

LogicOp Int32 

newtype VertexInputRate Source #

VkVertexInputRate - Specify rate at which vertex attributes are pulled from buffers

See Also

VK_VERSION_1_0, VertexInputBindingDescription, VertexInputBindingDescription2EXT

Constructors

VertexInputRate Int32 

Bundled Patterns

pattern VERTEX_INPUT_RATE_VERTEX :: VertexInputRate

VERTEX_INPUT_RATE_VERTEX specifies that vertex attribute addressing is a function of the vertex index.

pattern VERTEX_INPUT_RATE_INSTANCE :: VertexInputRate

VERTEX_INPUT_RATE_INSTANCE specifies that vertex attribute addressing is a function of the instance index.

Instances

Instances details
Storable VertexInputRate Source # 
Instance details

Defined in Vulkan.Core10.Enums.VertexInputRate

Read VertexInputRate Source # 
Instance details

Defined in Vulkan.Core10.Enums.VertexInputRate

Show VertexInputRate Source # 
Instance details

Defined in Vulkan.Core10.Enums.VertexInputRate

Eq VertexInputRate Source # 
Instance details

Defined in Vulkan.Core10.Enums.VertexInputRate

Ord VertexInputRate Source # 
Instance details

Defined in Vulkan.Core10.Enums.VertexInputRate

Zero VertexInputRate Source # 
Instance details

Defined in Vulkan.Core10.Enums.VertexInputRate

newtype DynamicState Source #

VkDynamicState - Indicate which dynamic state is taken from dynamic state commands

See Also

VK_VERSION_1_0, PipelineDynamicStateCreateInfo

Constructors

DynamicState Int32 

Bundled Patterns

pattern DYNAMIC_STATE_VIEWPORT :: DynamicState

DYNAMIC_STATE_VIEWPORT specifies that the pViewports state in PipelineViewportStateCreateInfo will be ignored and must be set dynamically with cmdSetViewport before any drawing commands. The number of viewports used by a pipeline is still specified by the viewportCount member of PipelineViewportStateCreateInfo.

pattern DYNAMIC_STATE_SCISSOR :: DynamicState

DYNAMIC_STATE_SCISSOR specifies that the pScissors state in PipelineViewportStateCreateInfo will be ignored and must be set dynamically with cmdSetScissor before any drawing commands. The number of scissor rectangles used by a pipeline is still specified by the scissorCount member of PipelineViewportStateCreateInfo.

pattern DYNAMIC_STATE_LINE_WIDTH :: DynamicState

DYNAMIC_STATE_LINE_WIDTH specifies that the lineWidth state in PipelineRasterizationStateCreateInfo will be ignored and must be set dynamically with cmdSetLineWidth before any drawing commands that generate line primitives for the rasterizer.

pattern DYNAMIC_STATE_DEPTH_BIAS :: DynamicState

DYNAMIC_STATE_DEPTH_BIAS specifies that any instance of DepthBiasRepresentationInfoEXT included in the pNext chain of PipelineRasterizationStateCreateInfo as well as the depthBiasConstantFactor, depthBiasClamp and depthBiasSlopeFactor states in PipelineRasterizationStateCreateInfo will be ignored and must be set dynamically with either cmdSetDepthBias or cmdSetDepthBias2EXT before any draws are performed with depth bias enabled.

pattern DYNAMIC_STATE_BLEND_CONSTANTS :: DynamicState

DYNAMIC_STATE_BLEND_CONSTANTS specifies that the blendConstants state in PipelineColorBlendStateCreateInfo will be ignored and must be set dynamically with cmdSetBlendConstants before any draws are performed with a pipeline state with PipelineColorBlendAttachmentState member blendEnable set to TRUE and any of the blend functions using a constant blend color.

pattern DYNAMIC_STATE_DEPTH_BOUNDS :: DynamicState

DYNAMIC_STATE_DEPTH_BOUNDS specifies that the minDepthBounds and maxDepthBounds states of PipelineDepthStencilStateCreateInfo will be ignored and must be set dynamically with cmdSetDepthBounds before any draws are performed with a pipeline state with PipelineDepthStencilStateCreateInfo member depthBoundsTestEnable set to TRUE.

pattern DYNAMIC_STATE_STENCIL_COMPARE_MASK :: DynamicState

DYNAMIC_STATE_STENCIL_COMPARE_MASK specifies that the compareMask state in PipelineDepthStencilStateCreateInfo for both front and back will be ignored and must be set dynamically with cmdSetStencilCompareMask before any draws are performed with a pipeline state with PipelineDepthStencilStateCreateInfo member stencilTestEnable set to TRUE

pattern DYNAMIC_STATE_STENCIL_WRITE_MASK :: DynamicState

DYNAMIC_STATE_STENCIL_WRITE_MASK specifies that the writeMask state in PipelineDepthStencilStateCreateInfo for both front and back will be ignored and must be set dynamically with cmdSetStencilWriteMask before any draws are performed with a pipeline state with PipelineDepthStencilStateCreateInfo member stencilTestEnable set to TRUE

pattern DYNAMIC_STATE_STENCIL_REFERENCE :: DynamicState

DYNAMIC_STATE_STENCIL_REFERENCE specifies that the reference state in PipelineDepthStencilStateCreateInfo for both front and back will be ignored and must be set dynamically with cmdSetStencilReference before any draws are performed with a pipeline state with PipelineDepthStencilStateCreateInfo member stencilTestEnable set to TRUE

pattern DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT specifies that the PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT and PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT flags will be ignored and must be set dynamically with cmdSetAttachmentFeedbackLoopEnableEXT before any draw call.

pattern DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV :: DynamicState

DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV specifies that the coverageReductionMode state in PipelineCoverageReductionStateCreateInfoNV will be ignored and must be set dynamically with cmdSetCoverageReductionModeNV before any draw call.

pattern DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV :: DynamicState

DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV specifies that the representativeFragmentTestEnable state in PipelineRepresentativeFragmentTestStateCreateInfoNV will be ignored and must be set dynamically with cmdSetRepresentativeFragmentTestEnableNV before any draw call.

pattern DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV :: DynamicState

DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV specifies that the shadingRateImageEnable state in PipelineViewportShadingRateImageStateCreateInfoNV will be ignored and must be set dynamically with cmdSetShadingRateImageEnableNV before any draw call.

pattern DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV :: DynamicState

DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV specifies that the coverageModulationTableCount, and pCoverageModulationTable states in PipelineCoverageModulationStateCreateInfoNV will be ignored and must be set dynamically with cmdSetCoverageModulationTableNV before any draw call.

pattern DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV :: DynamicState

DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV specifies that the coverageModulationTableEnable state in PipelineCoverageModulationStateCreateInfoNV will be ignored and must be set dynamically with cmdSetCoverageModulationTableEnableNV before any draw call.

pattern DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV :: DynamicState

DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV specifies that the coverageModulationMode state in PipelineCoverageModulationStateCreateInfoNV will be ignored and must be set dynamically with cmdSetCoverageModulationModeNV before any draw call.

pattern DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV :: DynamicState

DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV specifies that the coverageToColorLocation state in PipelineCoverageToColorStateCreateInfoNV will be ignored and must be set dynamically with cmdSetCoverageToColorLocationNV before any draw call.

pattern DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV :: DynamicState

DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV specifies that the coverageToColorEnable state in PipelineCoverageToColorStateCreateInfoNV will be ignored and must be set dynamically with cmdSetCoverageToColorEnableNV before any draw call.

pattern DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV :: DynamicState

DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV specifies that the viewportCount, and pViewportSwizzles states in PipelineViewportSwizzleStateCreateInfoNV will be ignored and must be set dynamically with cmdSetViewportSwizzleNV before any draw call.

pattern DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV :: DynamicState

DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV specifies that the viewportWScalingEnable state in PipelineViewportWScalingStateCreateInfoNV will be ignored and must be set dynamically with cmdSetViewportWScalingEnableNV before any draw call.

pattern DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT :: DynamicState

DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT specifies that the negativeOneToOne state in PipelineViewportDepthClipControlCreateInfoEXT will be ignored and must be set dynamically with cmdSetDepthClipNegativeOneToOneEXT before any draw call.

pattern DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT specifies that the stippledLineEnable state in PipelineRasterizationLineStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetLineStippleEnableEXT before any draw call.

pattern DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT :: DynamicState

DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT specifies that the lineRasterizationMode state in PipelineRasterizationLineStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetLineRasterizationModeEXT before any draw call.

pattern DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT :: DynamicState

DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT specifies that the provokingVertexMode state in PipelineRasterizationProvokingVertexStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetProvokingVertexModeEXT before any draw call.

pattern DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT :: DynamicState

DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT specifies that the colorBlendOp state in PipelineColorBlendAttachmentState, and srcPremultiplied, dstPremultiplied, and blendOverlap states in PipelineColorBlendAdvancedStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetColorBlendAdvancedEXT before any draw call.

pattern DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT specifies that the sampleLocationsEnable state in PipelineSampleLocationsStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetSampleLocationsEnableEXT before any draw call.

pattern DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT specifies that the depthClipEnable state in PipelineRasterizationDepthClipStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetDepthClipEnableEXT before any draw call.

pattern DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT :: DynamicState

DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT specifies that the extraPrimitiveOverestimationSize state in PipelineRasterizationConservativeStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetExtraPrimitiveOverestimationSizeEXT before any draw call.

pattern DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT :: DynamicState

DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT specifies that the conservativeRasterizationMode state in PipelineRasterizationConservativeStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetConservativeRasterizationModeEXT before any draw call.

pattern DYNAMIC_STATE_RASTERIZATION_STREAM_EXT :: DynamicState

DYNAMIC_STATE_RASTERIZATION_STREAM_EXT specifies that the rasterizationStream state in PipelineRasterizationStateStreamCreateInfoEXT will be ignored and must be set dynamically with cmdSetRasterizationStreamEXT before any draw call.

pattern DYNAMIC_STATE_COLOR_WRITE_MASK_EXT :: DynamicState

DYNAMIC_STATE_COLOR_WRITE_MASK_EXT specifies that the colorWriteMask state in PipelineColorBlendAttachmentState will be ignored and must be set dynamically with cmdSetColorWriteMaskEXT before any draw call.

pattern DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT :: DynamicState

DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT specifies that the srcColorBlendFactor, dstColorBlendFactor, colorBlendOp, srcAlphaBlendFactor, dstAlphaBlendFactor, and alphaBlendOp states in PipelineColorBlendAttachmentState will be ignored and must be set dynamically with cmdSetColorBlendEquationEXT before any draw call.

pattern DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT specifies that the blendEnable state in PipelineColorBlendAttachmentState will be ignored and must be set dynamically with cmdSetColorBlendEnableEXT before any draw call.

pattern DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT specifies that the logicOpEnable state in PipelineColorBlendStateCreateInfo will be ignored and must be set dynamically with cmdSetLogicOpEnableEXT before any draw call.

pattern DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT specifies that the alphaToOneEnable state in PipelineMultisampleStateCreateInfo will be ignored and must be set dynamically with cmdSetAlphaToOneEnableEXT before any draw call.

pattern DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT specifies that the alphaToCoverageEnable state in PipelineMultisampleStateCreateInfo will be ignored and must be set dynamically with cmdSetAlphaToCoverageEnableEXT before any draw call.

pattern DYNAMIC_STATE_SAMPLE_MASK_EXT :: DynamicState

DYNAMIC_STATE_SAMPLE_MASK_EXT specifies that the pSampleMask state in PipelineMultisampleStateCreateInfo will be ignored and must be set dynamically with cmdSetSampleMaskEXT before any draw call.

pattern DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT :: DynamicState

DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT specifies that the rasterizationSamples state in PipelineMultisampleStateCreateInfo will be ignored and must be set dynamically with cmdSetRasterizationSamplesEXT before any draw call.

pattern DYNAMIC_STATE_POLYGON_MODE_EXT :: DynamicState

DYNAMIC_STATE_POLYGON_MODE_EXT specifies that the polygonMode state in PipelineRasterizationStateCreateInfo will be ignored and must be set dynamically with cmdSetPolygonModeEXT before any draw call.

pattern DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT specifies that the depthClampEnable state in PipelineRasterizationStateCreateInfo will be ignored and must be set dynamically with cmdSetDepthClampEnableEXT before any draw call.

pattern DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT :: DynamicState

DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT specifies that the domainOrigin state in PipelineTessellationDomainOriginStateCreateInfo will be ignored and must be set dynamically with cmdSetTessellationDomainOriginEXT before any draw call.

pattern DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT specifies that the pColorWriteEnables state in PipelineColorWriteCreateInfoEXT will be ignored and must be set dynamically with cmdSetColorWriteEnableEXT before any draw call.

pattern DYNAMIC_STATE_LOGIC_OP_EXT :: DynamicState

DYNAMIC_STATE_LOGIC_OP_EXT specifies that the logicOp state in PipelineColorBlendStateCreateInfo will be ignored and must be set dynamically with cmdSetLogicOpEXT before any drawing commands.

pattern DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT :: DynamicState

DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT specifies that the patchControlPoints state in PipelineTessellationStateCreateInfo will be ignored and must be set dynamically with cmdSetPatchControlPointsEXT before any drawing commands.

pattern DYNAMIC_STATE_VERTEX_INPUT_EXT :: DynamicState

DYNAMIC_STATE_VERTEX_INPUT_EXT specifies that the pVertexInputState state will be ignored and must be set dynamically with cmdSetVertexInputEXT before any drawing commands

pattern DYNAMIC_STATE_LINE_STIPPLE_EXT :: DynamicState

DYNAMIC_STATE_LINE_STIPPLE_EXT specifies that the lineStippleFactor and lineStipplePattern state in PipelineRasterizationLineStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetLineStippleEXT before any draws are performed with a pipeline state with PipelineRasterizationLineStateCreateInfoEXT member stippledLineEnable set to TRUE.

pattern DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR :: DynamicState

DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR specifies that state in PipelineFragmentShadingRateStateCreateInfoKHR and PipelineFragmentShadingRateEnumStateCreateInfoNV will be ignored and must be set dynamically with cmdSetFragmentShadingRateKHR or cmdSetFragmentShadingRateEnumNV before any drawing commands.

pattern DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV :: DynamicState

DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV specifies that the pExclusiveScissors state in PipelineViewportExclusiveScissorStateCreateInfoNV will be ignored and must be set dynamically with cmdSetExclusiveScissorNV before any drawing commands.

pattern DYNAMIC_STATE_EXCLUSIVE_SCISSOR_ENABLE_NV :: DynamicState

DYNAMIC_STATE_EXCLUSIVE_SCISSOR_ENABLE_NV specifies that the the exclusive scissors must be explicitly enabled with cmdSetExclusiveScissorEnableNV and the exclusiveScissorCount value in PipelineViewportExclusiveScissorStateCreateInfoNV will not implicitly enable them. This is available on implementations that support at least specVersion 2 of the VK_NV_scissor_exclusive extension.

pattern DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV :: DynamicState

DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV specifies that the coarse sample order state in PipelineViewportCoarseSampleOrderStateCreateInfoNV will be ignored and must be set dynamically with cmdSetCoarseSampleOrderNV before any drawing commands.

pattern DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV :: DynamicState

DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV specifies that the pShadingRatePalettes state in PipelineViewportShadingRateImageStateCreateInfoNV will be ignored and must be set dynamically with cmdSetViewportShadingRatePaletteNV before any drawing commands.

pattern DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR :: DynamicState

DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR specifies that the default stack size computation for the pipeline will be ignored and must be set dynamically with cmdSetRayTracingPipelineStackSizeKHR before any ray tracing calls are performed.

pattern DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT :: DynamicState

DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT specifies that the sampleLocationsInfo state in PipelineSampleLocationsStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetSampleLocationsEXT before any draw or clear commands. Enabling custom sample locations is still indicated by the sampleLocationsEnable member of PipelineSampleLocationsStateCreateInfoEXT.

pattern DYNAMIC_STATE_DISCARD_RECTANGLE_MODE_EXT :: DynamicState

DYNAMIC_STATE_DISCARD_RECTANGLE_MODE_EXT specifies that the discardRectangleMode state in PipelineDiscardRectangleStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetDiscardRectangleModeEXT before any draw commands. This is available on implementations that support at least specVersion 2 of the VK_EXT_discard_rectangles extension.

pattern DYNAMIC_STATE_DISCARD_RECTANGLE_ENABLE_EXT :: DynamicState

DYNAMIC_STATE_DISCARD_RECTANGLE_ENABLE_EXT specifies that the presence of the PipelineDiscardRectangleStateCreateInfoEXT structure in the GraphicsPipelineCreateInfo chain with a discardRectangleCount greater than zero does not implicitly enable discard rectangles and they must be enabled dynamically with cmdSetDiscardRectangleEnableEXT before any draw commands. This is available on implementations that support at least specVersion 2 of the VK_EXT_discard_rectangles extension.

pattern DYNAMIC_STATE_DISCARD_RECTANGLE_EXT :: DynamicState

DYNAMIC_STATE_DISCARD_RECTANGLE_EXT specifies that the pDiscardRectangles state in PipelineDiscardRectangleStateCreateInfoEXT will be ignored and must be set dynamically with cmdSetDiscardRectangleEXT before any draw or clear commands.

pattern DYNAMIC_STATE_VIEWPORT_W_SCALING_NV :: DynamicState

DYNAMIC_STATE_VIEWPORT_W_SCALING_NV specifies that the pViewportWScalings state in PipelineViewportWScalingStateCreateInfoNV will be ignored and must be set dynamically with cmdSetViewportWScalingNV before any draws are performed with a pipeline state with PipelineViewportWScalingStateCreateInfoNV member viewportScalingEnable set to TRUE

pattern DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE :: DynamicState

DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE specifies that the primitiveRestartEnable state in PipelineInputAssemblyStateCreateInfo will be ignored and must be set dynamically with cmdSetPrimitiveRestartEnable before any drawing commands.

pattern DYNAMIC_STATE_DEPTH_BIAS_ENABLE :: DynamicState

DYNAMIC_STATE_DEPTH_BIAS_ENABLE specifies that the depthBiasEnable state in PipelineRasterizationStateCreateInfo will be ignored and must be set dynamically with cmdSetDepthBiasEnable before any drawing commands.

pattern DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE :: DynamicState

DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE specifies that the rasterizerDiscardEnable state in PipelineRasterizationStateCreateInfo will be ignored and must be set dynamically with cmdSetRasterizerDiscardEnable before any drawing commands.

pattern DYNAMIC_STATE_STENCIL_OP :: DynamicState

DYNAMIC_STATE_STENCIL_OP specifies that the failOp, passOp, depthFailOp, and compareOp states in PipelineDepthStencilStateCreateInfo for both front and back will be ignored and must be set dynamically with cmdSetStencilOp before any draws are performed with a pipeline state with PipelineDepthStencilStateCreateInfo member stencilTestEnable set to TRUE

pattern DYNAMIC_STATE_STENCIL_TEST_ENABLE :: DynamicState

DYNAMIC_STATE_STENCIL_TEST_ENABLE specifies that the stencilTestEnable state in PipelineDepthStencilStateCreateInfo will be ignored and must be set dynamically with cmdSetStencilTestEnable before any draw call.

pattern DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE :: DynamicState

DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE specifies that the depthBoundsTestEnable state in PipelineDepthStencilStateCreateInfo will be ignored and must be set dynamically with cmdSetDepthBoundsTestEnable before any draw call.

pattern DYNAMIC_STATE_DEPTH_COMPARE_OP :: DynamicState

DYNAMIC_STATE_DEPTH_COMPARE_OP specifies that the depthCompareOp state in PipelineDepthStencilStateCreateInfo will be ignored and must be set dynamically with cmdSetDepthCompareOp before any draw call.

pattern DYNAMIC_STATE_DEPTH_WRITE_ENABLE :: DynamicState

DYNAMIC_STATE_DEPTH_WRITE_ENABLE specifies that the depthWriteEnable state in PipelineDepthStencilStateCreateInfo will be ignored and must be set dynamically with cmdSetDepthWriteEnable before any draw call.

pattern DYNAMIC_STATE_DEPTH_TEST_ENABLE :: DynamicState

DYNAMIC_STATE_DEPTH_TEST_ENABLE specifies that the depthTestEnable state in PipelineDepthStencilStateCreateInfo will be ignored and must be set dynamically with cmdSetDepthTestEnable before any draw call.

pattern DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE :: DynamicState

DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE specifies that the stride state in VertexInputBindingDescription will be ignored and must be set dynamically with cmdBindVertexBuffers2 before any draw call.

pattern DYNAMIC_STATE_SCISSOR_WITH_COUNT :: DynamicState

DYNAMIC_STATE_SCISSOR_WITH_COUNT specifies that the scissorCount and pScissors state in PipelineViewportStateCreateInfo will be ignored and must be set dynamically with cmdSetScissorWithCount before any draw call.

pattern DYNAMIC_STATE_VIEWPORT_WITH_COUNT :: DynamicState

DYNAMIC_STATE_VIEWPORT_WITH_COUNT specifies that the viewportCount and pViewports state in PipelineViewportStateCreateInfo will be ignored and must be set dynamically with cmdSetViewportWithCount before any draw call.

pattern DYNAMIC_STATE_PRIMITIVE_TOPOLOGY :: DynamicState

DYNAMIC_STATE_PRIMITIVE_TOPOLOGY specifies that the topology state in PipelineInputAssemblyStateCreateInfo only specifies the topology class, and the specific topology order and adjacency must be set dynamically with cmdSetPrimitiveTopology before any drawing commands.

pattern DYNAMIC_STATE_FRONT_FACE :: DynamicState

DYNAMIC_STATE_FRONT_FACE specifies that the frontFace state in PipelineRasterizationStateCreateInfo will be ignored and must be set dynamically with cmdSetFrontFace before any drawing commands.

pattern DYNAMIC_STATE_CULL_MODE :: DynamicState

DYNAMIC_STATE_CULL_MODE specifies that the cullMode state in PipelineRasterizationStateCreateInfo will be ignored and must be set dynamically with cmdSetCullMode before any drawing commands.

Instances

Instances details
Storable DynamicState Source # 
Instance details

Defined in Vulkan.Core10.Enums.DynamicState

Read DynamicState Source # 
Instance details

Defined in Vulkan.Core10.Enums.DynamicState

Show DynamicState Source # 
Instance details

Defined in Vulkan.Core10.Enums.DynamicState

Eq DynamicState Source # 
Instance details

Defined in Vulkan.Core10.Enums.DynamicState

Ord DynamicState Source # 
Instance details

Defined in Vulkan.Core10.Enums.DynamicState

Zero DynamicState Source # 
Instance details

Defined in Vulkan.Core10.Enums.DynamicState

newtype CullModeFlagBits Source #

VkCullModeFlagBits - Bitmask controlling triangle culling

Description

Following culling, fragments are produced for any triangles which have not been discarded.

See Also

VK_VERSION_1_0, CullModeFlags

Constructors

CullModeFlagBits Flags 

Bundled Patterns

pattern CULL_MODE_NONE :: CullModeFlagBits

CULL_MODE_NONE specifies that no triangles are discarded

pattern CULL_MODE_FRONT_BIT :: CullModeFlagBits

CULL_MODE_FRONT_BIT specifies that front-facing triangles are discarded

pattern CULL_MODE_BACK_BIT :: CullModeFlagBits

CULL_MODE_BACK_BIT specifies that back-facing triangles are discarded

pattern CULL_MODE_FRONT_AND_BACK :: CullModeFlagBits

CULL_MODE_FRONT_AND_BACK specifies that all triangles are discarded.

Instances

Instances details
Storable CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

Bits CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

FiniteBits CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

Read CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

Show CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

Eq CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

Ord CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

Zero CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

newtype ShaderStageFlagBits Source #

VkShaderStageFlagBits - Bitmask specifying a pipeline stage

Description

Note

SHADER_STAGE_ALL_GRAPHICS only includes the original five graphics stages included in Vulkan 1.0, and not any stages added by extensions. Thus, it may not have the desired effect in all cases.

See Also

VK_VERSION_1_0, PipelineShaderStageCreateInfo, ShaderCreateInfoEXT, ShaderStageFlags, cmdBindShadersEXT, getShaderInfoAMD

Bundled Patterns

pattern SHADER_STAGE_VERTEX_BIT :: ShaderStageFlagBits

SHADER_STAGE_VERTEX_BIT specifies the vertex stage.

pattern SHADER_STAGE_TESSELLATION_CONTROL_BIT :: ShaderStageFlagBits

SHADER_STAGE_TESSELLATION_CONTROL_BIT specifies the tessellation control stage.

pattern SHADER_STAGE_TESSELLATION_EVALUATION_BIT :: ShaderStageFlagBits

SHADER_STAGE_TESSELLATION_EVALUATION_BIT specifies the tessellation evaluation stage.

pattern SHADER_STAGE_GEOMETRY_BIT :: ShaderStageFlagBits

SHADER_STAGE_GEOMETRY_BIT specifies the geometry stage.

pattern SHADER_STAGE_FRAGMENT_BIT :: ShaderStageFlagBits

SHADER_STAGE_FRAGMENT_BIT specifies the fragment stage.

pattern SHADER_STAGE_COMPUTE_BIT :: ShaderStageFlagBits

SHADER_STAGE_COMPUTE_BIT specifies the compute stage.

pattern SHADER_STAGE_ALL_GRAPHICS :: ShaderStageFlagBits

SHADER_STAGE_ALL_GRAPHICS is a combination of bits used as shorthand to specify all graphics stages defined above (excluding the compute stage).

pattern SHADER_STAGE_ALL :: ShaderStageFlagBits

SHADER_STAGE_ALL is a combination of bits used as shorthand to specify all shader stages supported by the device, including all additional stages which are introduced by extensions.

pattern SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI :: ShaderStageFlagBits

SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI specifies the cluster culling stage.

pattern SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI :: ShaderStageFlagBits 
pattern SHADER_STAGE_MESH_BIT_EXT :: ShaderStageFlagBits

SHADER_STAGE_MESH_BIT_EXT specifies the mesh stage.

pattern SHADER_STAGE_TASK_BIT_EXT :: ShaderStageFlagBits

SHADER_STAGE_TASK_BIT_EXT specifies the task stage.

pattern SHADER_STAGE_CALLABLE_BIT_KHR :: ShaderStageFlagBits

SHADER_STAGE_CALLABLE_BIT_KHR specifies the callable stage.

pattern SHADER_STAGE_INTERSECTION_BIT_KHR :: ShaderStageFlagBits

SHADER_STAGE_INTERSECTION_BIT_KHR specifies the intersection stage.

pattern SHADER_STAGE_MISS_BIT_KHR :: ShaderStageFlagBits

SHADER_STAGE_MISS_BIT_KHR specifies the miss stage.

pattern SHADER_STAGE_CLOSEST_HIT_BIT_KHR :: ShaderStageFlagBits

SHADER_STAGE_CLOSEST_HIT_BIT_KHR specifies the closest hit stage.

pattern SHADER_STAGE_ANY_HIT_BIT_KHR :: ShaderStageFlagBits

SHADER_STAGE_ANY_HIT_BIT_KHR specifies the any-hit stage.

pattern SHADER_STAGE_RAYGEN_BIT_KHR :: ShaderStageFlagBits

SHADER_STAGE_RAYGEN_BIT_KHR specifies the ray generation stage.

Instances

Instances details
Storable ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Bits ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

FiniteBits ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Read ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Show ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Eq ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Ord ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Zero ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

newtype PipelineCreateFlagBits Source #

VkPipelineCreateFlagBits - Bitmask controlling how a pipeline is created

Description

It is valid to set both PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT and PIPELINE_CREATE_DERIVATIVE_BIT. This allows a pipeline to be both a parent and possibly a child in a pipeline hierarchy. See Pipeline Derivatives for more information.

When an implementation is looking up a pipeline in a pipeline cache, if that pipeline is being created using linked libraries, implementations should always return an equivalent pipeline created with PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT if available, whether or not that bit was specified.

Note

Using PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT (or not) when linking pipeline libraries is intended as a performance tradeoff between host and device. If the bit is omitted, linking should be faster and produce a pipeline more rapidly, but performance of the pipeline on the target device may be reduced. If the bit is included, linking may be slower but should produce a pipeline with device performance comparable to a monolithically created pipeline. Using both options can allow latency-sensitive applications to generate a suboptimal but usable pipeline quickly, and then perform an optimal link in the background, substituting the result for the suboptimally linked pipeline as soon as it is available.

See Also

VK_VERSION_1_0, PipelineCreateFlags

Bundled Patterns

pattern PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DERIVATIVE_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_LIBRARY_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DEFER_COMPILE_BIT_NV :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DISPATCH_BASE_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: PipelineCreateFlagBits 

Instances

Instances details
Storable PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Bits PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

FiniteBits PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Read PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Show PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Eq PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Ord PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Zero PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

newtype PipelineShaderStageCreateFlagBits Source #

VkPipelineShaderStageCreateFlagBits - Bitmask controlling how a pipeline shader stage is created

Description

Note

If PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT and PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT are specified and minSubgroupSize does not equal maxSubgroupSize and no required subgroup size is specified, then the only way to guarantee that the 'X' dimension of the local workgroup size is a multiple of SubgroupSize is to make it a multiple of maxSubgroupSize. Under these conditions, you are guaranteed full subgroups but not any particular subgroup size.

See Also

VK_VERSION_1_0, PipelineShaderStageCreateFlags

Bundled Patterns

pattern PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT :: PipelineShaderStageCreateFlagBits

PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT specifies that the subgroup sizes must be launched with all invocations active in the task, mesh, or compute stage.

pattern PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT :: PipelineShaderStageCreateFlagBits

PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT specifies that the SubgroupSize may vary in the shader stage.

Instances

Instances details
Storable PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Bits PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Methods

(.&.) :: PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits #

(.|.) :: PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits #

xor :: PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits #

complement :: PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits #

shift :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

rotate :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

zeroBits :: PipelineShaderStageCreateFlagBits #

bit :: Int -> PipelineShaderStageCreateFlagBits #

setBit :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

clearBit :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

complementBit :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

testBit :: PipelineShaderStageCreateFlagBits -> Int -> Bool #

bitSizeMaybe :: PipelineShaderStageCreateFlagBits -> Maybe Int #

bitSize :: PipelineShaderStageCreateFlagBits -> Int #

isSigned :: PipelineShaderStageCreateFlagBits -> Bool #

shiftL :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

unsafeShiftL :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

shiftR :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

unsafeShiftR :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

rotateL :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

rotateR :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

popCount :: PipelineShaderStageCreateFlagBits -> Int #

FiniteBits PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Read PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Show PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Eq PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Ord PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Zero PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

newtype ColorComponentFlagBits Source #

VkColorComponentFlagBits - Bitmask controlling which components are written to the framebuffer

Description

The color write mask operation is applied regardless of whether blending is enabled.

The color write mask operation is applied only if Color Write Enable is enabled for the respective attachment. Otherwise the color write mask is ignored and writes to all components of the attachment are disabled.

See Also

VK_VERSION_1_0, ColorComponentFlags

Bundled Patterns

pattern COLOR_COMPONENT_R_BIT :: ColorComponentFlagBits

COLOR_COMPONENT_R_BIT specifies that the R value is written to the color attachment for the appropriate sample. Otherwise, the value in memory is unmodified.

pattern COLOR_COMPONENT_G_BIT :: ColorComponentFlagBits

COLOR_COMPONENT_G_BIT specifies that the G value is written to the color attachment for the appropriate sample. Otherwise, the value in memory is unmodified.

pattern COLOR_COMPONENT_B_BIT :: ColorComponentFlagBits

COLOR_COMPONENT_B_BIT specifies that the B value is written to the color attachment for the appropriate sample. Otherwise, the value in memory is unmodified.

pattern COLOR_COMPONENT_A_BIT :: ColorComponentFlagBits

COLOR_COMPONENT_A_BIT specifies that the A value is written to the color attachment for the appropriate sample. Otherwise, the value in memory is unmodified.

Instances

Instances details
Storable ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

Bits ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

FiniteBits ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

Read ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

Show ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

Eq ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

Ord ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

Zero ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

newtype PipelineLayoutCreateFlagBits Source #

VkPipelineLayoutCreateFlagBits - Pipeline layout creation flag bits

See Also

VK_EXT_graphics_pipeline_library, PipelineLayoutCreateFlags

Bundled Patterns

pattern PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT :: PipelineLayoutCreateFlagBits

PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT specifies that implementations must ensure that the properties and/or absence of a particular descriptor set do not influence any other properties of the pipeline layout. This allows pipelines libraries linked without PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT to be created with a subset of the total descriptor sets.

Instances

Instances details
Storable PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Bits PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Methods

(.&.) :: PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits #

(.|.) :: PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits #

xor :: PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits #

complement :: PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits #

shift :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

rotate :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

zeroBits :: PipelineLayoutCreateFlagBits #

bit :: Int -> PipelineLayoutCreateFlagBits #

setBit :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

clearBit :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

complementBit :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

testBit :: PipelineLayoutCreateFlagBits -> Int -> Bool #

bitSizeMaybe :: PipelineLayoutCreateFlagBits -> Maybe Int #

bitSize :: PipelineLayoutCreateFlagBits -> Int #

isSigned :: PipelineLayoutCreateFlagBits -> Bool #

shiftL :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

unsafeShiftL :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

shiftR :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

unsafeShiftR :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

rotateL :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

rotateR :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

popCount :: PipelineLayoutCreateFlagBits -> Int #

FiniteBits PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Read PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Show PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Eq PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Ord PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Zero PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

newtype PipelineColorBlendStateCreateFlagBits Source #

VkPipelineColorBlendStateCreateFlagBits - Bitmask specifying additional parameters of an image

Description

When PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT is included in a pipeline, it forms a framebuffer-local memory dependency for each fragment generated by draw commands for that pipeline with the following scopes:

See Also

VK_EXT_rasterization_order_attachment_access, PipelineColorBlendStateCreateFlags

Instances

Instances details
Storable PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Bits PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Methods

(.&.) :: PipelineColorBlendStateCreateFlagBits -> PipelineColorBlendStateCreateFlagBits -> PipelineColorBlendStateCreateFlagBits #

(.|.) :: PipelineColorBlendStateCreateFlagBits -> PipelineColorBlendStateCreateFlagBits -> PipelineColorBlendStateCreateFlagBits #

xor :: PipelineColorBlendStateCreateFlagBits -> PipelineColorBlendStateCreateFlagBits -> PipelineColorBlendStateCreateFlagBits #

complement :: PipelineColorBlendStateCreateFlagBits -> PipelineColorBlendStateCreateFlagBits #

shift :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

rotate :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

zeroBits :: PipelineColorBlendStateCreateFlagBits #

bit :: Int -> PipelineColorBlendStateCreateFlagBits #

setBit :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

clearBit :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

complementBit :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

testBit :: PipelineColorBlendStateCreateFlagBits -> Int -> Bool #

bitSizeMaybe :: PipelineColorBlendStateCreateFlagBits -> Maybe Int #

bitSize :: PipelineColorBlendStateCreateFlagBits -> Int #

isSigned :: PipelineColorBlendStateCreateFlagBits -> Bool #

shiftL :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

unsafeShiftL :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

shiftR :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

unsafeShiftR :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

rotateL :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

rotateR :: PipelineColorBlendStateCreateFlagBits -> Int -> PipelineColorBlendStateCreateFlagBits #

popCount :: PipelineColorBlendStateCreateFlagBits -> Int #

FiniteBits PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Read PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Show PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Eq PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Ord PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Zero PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

newtype PipelineDepthStencilStateCreateFlagBits Source #

VkPipelineDepthStencilStateCreateFlagBits - Bitmask specifying additional depth/stencil state information.

Description

When PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT is included in a pipeline, it forms a framebuffer-local memory dependency for each fragment generated by draw commands for that pipeline with the following scopes:

When PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT is included in a pipeline, it forms a framebuffer-local memory dependency for each fragment generated by draw commands for that pipeline with the following scopes:

See Also

VK_EXT_rasterization_order_attachment_access, PipelineDepthStencilStateCreateFlags

Instances

Instances details
Storable PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Bits PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Methods

(.&.) :: PipelineDepthStencilStateCreateFlagBits -> PipelineDepthStencilStateCreateFlagBits -> PipelineDepthStencilStateCreateFlagBits #

(.|.) :: PipelineDepthStencilStateCreateFlagBits -> PipelineDepthStencilStateCreateFlagBits -> PipelineDepthStencilStateCreateFlagBits #

xor :: PipelineDepthStencilStateCreateFlagBits -> PipelineDepthStencilStateCreateFlagBits -> PipelineDepthStencilStateCreateFlagBits #

complement :: PipelineDepthStencilStateCreateFlagBits -> PipelineDepthStencilStateCreateFlagBits #

shift :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

rotate :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

zeroBits :: PipelineDepthStencilStateCreateFlagBits #

bit :: Int -> PipelineDepthStencilStateCreateFlagBits #

setBit :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

clearBit :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

complementBit :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

testBit :: PipelineDepthStencilStateCreateFlagBits -> Int -> Bool #

bitSizeMaybe :: PipelineDepthStencilStateCreateFlagBits -> Maybe Int #

bitSize :: PipelineDepthStencilStateCreateFlagBits -> Int #

isSigned :: PipelineDepthStencilStateCreateFlagBits -> Bool #

shiftL :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

unsafeShiftL :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

shiftR :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

unsafeShiftR :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

rotateL :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

rotateR :: PipelineDepthStencilStateCreateFlagBits -> Int -> PipelineDepthStencilStateCreateFlagBits #

popCount :: PipelineDepthStencilStateCreateFlagBits -> Int #

FiniteBits PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Read PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Show PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Eq PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Ord PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Zero PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

type SampleMask = Word32 Source #

VkSampleMask - Mask of sample coverage information

See Also

VK_VERSION_1_0, PipelineMultisampleStateCreateInfo, cmdSetSampleMaskEXT