vulkan
Safe HaskellNone
LanguageHaskell2010

Vulkan.Core10.GraphicsPipeline

Synopsis

Documentation

createGraphicsPipelines Source #

Arguments

:: 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 to enable caching, the handle of a valid PipelineCache object. The implementation must not access this object outside of the duration of this 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.

Pipelines are created and returned as described for Multiple Pipeline Creation.

Valid Usage

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 :: 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.

data Viewport Source #

VkViewport - Structure specifying a viewport

Description

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, cmdSetViewportWithCount

Constructors

Viewport 

Fields

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
Eq VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Storable VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Show VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

FromCStruct VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

ToCStruct VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Zero VertexInputBindingDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

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
Eq VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Storable VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Show VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

FromCStruct VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

ToCStruct VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Zero VertexInputAttributeDescription Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

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 PipelineVertexInputDivisorStateCreateInfo
  • The sType value of each structure 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.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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
Eq PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Storable PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Show PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

FromCStruct PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

ToCStruct PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Zero PipelineInputAssemblyStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

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.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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 viewportCount 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 scissorCount 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.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

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.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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
Eq PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Storable PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Show PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

FromCStruct PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

ToCStruct PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Zero PipelineColorBlendAttachmentState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

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.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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
Eq StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Storable StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Show StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

FromCStruct StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

ToCStruct StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Zero StencilOpState Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

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.GraphicsPipeline

Show PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

FromCStruct PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

ToCStruct PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

Zero PipelineDepthStencilStateCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.GraphicsPipeline

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.

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 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 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 the pNext chain includes a PipelineCreateFlags2CreateInfo structure, PipelineCreateFlags2CreateInfo::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.GraphicsPipeline

Methods

extensibleTypeName :: String Source #

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

setNext :: forall (ds :: [Type]) (es :: [Type]). 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.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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

Defined in Vulkan.Core10.GraphicsPipeline

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, Flags, PipelineDynamicStateCreateInfo

Instances

Instances details
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

Eq PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Ord PipelineDynamicStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDynamicStateCreateFlags

Storable 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

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, Flags, PipelineMultisampleStateCreateInfo

Instances

Instances details
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

Eq PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Ord PipelineMultisampleStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineMultisampleStateCreateFlags

Storable 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

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, Flags, PipelineRasterizationStateCreateInfo

Instances

Instances details
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

Eq PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Ord PipelineRasterizationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineRasterizationStateCreateFlags

Storable 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

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, Flags, PipelineViewportStateCreateInfo

Instances

Instances details
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

Eq PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Ord PipelineViewportStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineViewportStateCreateFlags

Storable 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

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, Flags, PipelineTessellationStateCreateInfo

Instances

Instances details
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

Eq PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Ord PipelineTessellationStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineTessellationStateCreateFlags

Storable 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

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, Flags, PipelineInputAssemblyStateCreateInfo

Instances

Instances details
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

Eq PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Ord PipelineInputAssemblyStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineInputAssemblyStateCreateFlags

Storable 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

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, Flags, PipelineVertexInputStateCreateInfo

Instances

Instances details
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

Eq PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Ord PipelineVertexInputStateCreateFlags Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineVertexInputStateCreateFlags

Storable 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

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, cmdSetPrimitiveTopology

Constructors

PrimitiveTopology Int32 

Instances

Instances details
Eq PrimitiveTopology Source # 
Instance details

Defined in Vulkan.Core10.Enums.PrimitiveTopology

Ord PrimitiveTopology Source # 
Instance details

Defined in Vulkan.Core10.Enums.PrimitiveTopology

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

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, cmdSetDepthCompareOp, cmdSetStencilOp, cmdSetStencilOp

Constructors

CompareOp Int32 

Instances

Instances details
Eq CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

Ord CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

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

Zero CompareOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.CompareOp

newtype PolygonMode Source #

VkPolygonMode - Control polygon rasterization mode

Description

  • POLYGON_MODE_LINE specifies that polygon edges are drawn as line segments.
  • POLYGON_MODE_FILL specifies that polygons are rendered using the polygon rasterization rules in this section.
  • 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.

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 PhysicalDeviceMaintenance5Properties::polygonModePointSize is TRUE, the point size of the final rasterization of polygons is taken from PointSize when polygon mode is POLYGON_MODE_POINT.

Otherwise, if PhysicalDeviceMaintenance5Properties::polygonModePointSize is 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 

Instances

Instances details
Eq PolygonMode Source # 
Instance details

Defined in Vulkan.Core10.Enums.PolygonMode

Ord PolygonMode Source # 
Instance details

Defined in Vulkan.Core10.Enums.PolygonMode

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

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, cmdSetFrontFace

Constructors

FrontFace Int32 

Bundled Patterns

pattern FRONT_FACE_CLOCKWISE :: FrontFace 
pattern FRONT_FACE_COUNTER_CLOCKWISE :: FrontFace 

Instances

Instances details
Eq FrontFace Source # 
Instance details

Defined in Vulkan.Core10.Enums.FrontFace

Ord FrontFace Source # 
Instance details

Defined in Vulkan.Core10.Enums.FrontFace

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

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
Eq BlendFactor Source # 
Instance details

Defined in Vulkan.Core10.Enums.BlendFactor

Ord BlendFactor Source # 
Instance details

Defined in Vulkan.Core10.Enums.BlendFactor

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

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_BLUE_EXT :: BlendOp 
pattern BLEND_OP_COLORBURN_EXT :: BlendOp 
pattern BLEND_OP_COLORDODGE_EXT :: BlendOp 
pattern BLEND_OP_CONTRAST_EXT :: BlendOp 
pattern BLEND_OP_DARKEN_EXT :: BlendOp 
pattern BLEND_OP_DIFFERENCE_EXT :: BlendOp 
pattern BLEND_OP_DST_ATOP_EXT :: BlendOp 
pattern BLEND_OP_DST_EXT :: BlendOp 
pattern BLEND_OP_DST_IN_EXT :: BlendOp 
pattern BLEND_OP_DST_OUT_EXT :: BlendOp 
pattern BLEND_OP_DST_OVER_EXT :: BlendOp 
pattern BLEND_OP_EXCLUSION_EXT :: BlendOp 
pattern BLEND_OP_GREEN_EXT :: BlendOp 
pattern BLEND_OP_HARDLIGHT_EXT :: BlendOp 
pattern BLEND_OP_HARDMIX_EXT :: BlendOp 
pattern BLEND_OP_HSL_COLOR_EXT :: BlendOp 
pattern BLEND_OP_HSL_HUE_EXT :: BlendOp 
pattern BLEND_OP_HSL_LUMINOSITY_EXT :: BlendOp 
pattern BLEND_OP_HSL_SATURATION_EXT :: BlendOp 
pattern BLEND_OP_INVERT_EXT :: BlendOp 
pattern BLEND_OP_INVERT_OVG_EXT :: BlendOp 
pattern BLEND_OP_INVERT_RGB_EXT :: BlendOp 
pattern BLEND_OP_LIGHTEN_EXT :: BlendOp 
pattern BLEND_OP_LINEARBURN_EXT :: BlendOp 
pattern BLEND_OP_LINEARDODGE_EXT :: BlendOp 
pattern BLEND_OP_LINEARLIGHT_EXT :: BlendOp 
pattern BLEND_OP_MAX :: BlendOp 
pattern BLEND_OP_MIN :: BlendOp 
pattern BLEND_OP_MINUS_CLAMPED_EXT :: BlendOp 
pattern BLEND_OP_MINUS_EXT :: BlendOp 
pattern BLEND_OP_MULTIPLY_EXT :: BlendOp 
pattern BLEND_OP_OVERLAY_EXT :: BlendOp 
pattern BLEND_OP_PINLIGHT_EXT :: BlendOp 
pattern BLEND_OP_PLUS_CLAMPED_ALPHA_EXT :: BlendOp 
pattern BLEND_OP_PLUS_CLAMPED_EXT :: BlendOp 
pattern BLEND_OP_PLUS_DARKER_EXT :: BlendOp 
pattern BLEND_OP_PLUS_EXT :: BlendOp 
pattern BLEND_OP_RED_EXT :: BlendOp 
pattern BLEND_OP_REVERSE_SUBTRACT :: BlendOp 
pattern BLEND_OP_SCREEN_EXT :: BlendOp 
pattern BLEND_OP_SOFTLIGHT_EXT :: BlendOp 
pattern BLEND_OP_SRC_ATOP_EXT :: BlendOp 
pattern BLEND_OP_SRC_EXT :: BlendOp 
pattern BLEND_OP_SRC_IN_EXT :: BlendOp 
pattern BLEND_OP_SRC_OUT_EXT :: BlendOp 
pattern BLEND_OP_SRC_OVER_EXT :: BlendOp 
pattern BLEND_OP_SUBTRACT :: BlendOp 
pattern BLEND_OP_VIVIDLIGHT_EXT :: BlendOp 
pattern BLEND_OP_XOR_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, cmdSetStencilOp

Constructors

StencilOp Int32 

Instances

Instances details
Eq StencilOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.StencilOp

Ord StencilOp Source # 
Instance details

Defined in Vulkan.Core10.Enums.StencilOp

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

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

Description

See Also

VK_VERSION_1_0, VertexInputBindingDescription, VertexInputBindingDescription2EXT

Constructors

VertexInputRate Int32 

Instances

Instances details
Eq VertexInputRate Source # 
Instance details

Defined in Vulkan.Core10.Enums.VertexInputRate

Ord VertexInputRate Source # 
Instance details

Defined in Vulkan.Core10.Enums.VertexInputRate

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

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

Description

See Also

VK_VERSION_1_0, PipelineDynamicStateCreateInfo

Constructors

DynamicState Int32 

Bundled Patterns

pattern DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_BLEND_CONSTANTS :: DynamicState 
pattern DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT :: DynamicState 
pattern DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT :: DynamicState 
pattern DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_COLOR_WRITE_MASK_EXT :: DynamicState 
pattern DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT :: DynamicState 
pattern DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV :: DynamicState 
pattern DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV :: DynamicState 
pattern DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV :: DynamicState 
pattern DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV :: DynamicState 
pattern DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV :: DynamicState 
pattern DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV :: DynamicState 
pattern DYNAMIC_STATE_CULL_MODE :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_BIAS :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_BIAS_ENABLE :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_BOUNDS :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_CLAMP_RANGE_EXT :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_COMPARE_OP :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_TEST_ENABLE :: DynamicState 
pattern DYNAMIC_STATE_DEPTH_WRITE_ENABLE :: DynamicState 
pattern DYNAMIC_STATE_DISCARD_RECTANGLE_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_DISCARD_RECTANGLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_DISCARD_RECTANGLE_MODE_EXT :: DynamicState 
pattern DYNAMIC_STATE_EXCLUSIVE_SCISSOR_ENABLE_NV :: DynamicState 
pattern DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV :: DynamicState 
pattern DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT :: DynamicState 
pattern DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR :: DynamicState 
pattern DYNAMIC_STATE_FRONT_FACE :: DynamicState 
pattern DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT :: DynamicState 
pattern DYNAMIC_STATE_LINE_STIPPLE :: DynamicState 
pattern DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_LINE_WIDTH :: DynamicState 
pattern DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_LOGIC_OP_EXT :: DynamicState 
pattern DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT :: DynamicState 
pattern DYNAMIC_STATE_POLYGON_MODE_EXT :: DynamicState 
pattern DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE :: DynamicState 
pattern DYNAMIC_STATE_PRIMITIVE_TOPOLOGY :: DynamicState 
pattern DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT :: DynamicState 
pattern DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT :: DynamicState 
pattern DYNAMIC_STATE_RASTERIZATION_STREAM_EXT :: DynamicState 
pattern DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE :: DynamicState 
pattern DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR :: DynamicState 
pattern DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV :: DynamicState 
pattern DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT :: DynamicState 
pattern DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT :: DynamicState 
pattern DYNAMIC_STATE_SAMPLE_MASK_EXT :: DynamicState 
pattern DYNAMIC_STATE_SCISSOR :: DynamicState 
pattern DYNAMIC_STATE_SCISSOR_WITH_COUNT :: DynamicState 
pattern DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV :: DynamicState 
pattern DYNAMIC_STATE_STENCIL_COMPARE_MASK :: DynamicState 
pattern DYNAMIC_STATE_STENCIL_OP :: DynamicState 
pattern DYNAMIC_STATE_STENCIL_REFERENCE :: DynamicState 
pattern DYNAMIC_STATE_STENCIL_TEST_ENABLE :: DynamicState 
pattern DYNAMIC_STATE_STENCIL_WRITE_MASK :: DynamicState 
pattern DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT :: DynamicState 
pattern DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE :: DynamicState 
pattern DYNAMIC_STATE_VERTEX_INPUT_EXT :: DynamicState 
pattern DYNAMIC_STATE_VIEWPORT :: DynamicState 
pattern DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV :: DynamicState 
pattern DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV :: DynamicState 
pattern DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV :: DynamicState 
pattern DYNAMIC_STATE_VIEWPORT_WITH_COUNT :: DynamicState 
pattern DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV :: DynamicState 
pattern DYNAMIC_STATE_VIEWPORT_W_SCALING_NV :: DynamicState 

Instances

Instances details
Eq DynamicState Source # 
Instance details

Defined in Vulkan.Core10.Enums.DynamicState

Ord DynamicState Source # 
Instance details

Defined in Vulkan.Core10.Enums.DynamicState

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

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 

Instances

Instances details
Bits CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

FiniteBits 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

Storable 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

Zero CullModeFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.CullModeFlagBits

newtype ColorComponentFlagBits Source #

VkColorComponentFlagBits - Bitmask controlling which components are written to the framebuffer

Description

  • 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.
  • 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.
  • 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.
  • 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.

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

Instances

Instances details
Bits ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

FiniteBits 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

Storable 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

Zero ColorComponentFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ColorComponentFlagBits

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
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

Eq PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Ord PipelineColorBlendStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineColorBlendStateCreateFlagBits

Storable 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

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
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

Eq PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Ord PipelineDepthStencilStateCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineDepthStencilStateCreateFlagBits

Storable 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

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