Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Name
VK_EXT_extended_dynamic_state3 - device extension
VK_EXT_extended_dynamic_state3
- Name String
VK_EXT_extended_dynamic_state3
- Extension Type
- Device extension
- Registered Extension Number
- 456
- Revision
- 2
- Extension and Version Dependencies
- Requires support for Vulkan 1.0
- Requires
VK_KHR_get_physical_device_properties2
to be enabled for any device-level functionality
- Contact
- Extension Proposal
- VK_EXT_extended_dynamic_state3
Other Extension Metadata
- Last Modified Date
- 2022-09-02
- IP Status
- No known IP claims.
- Contributors
- Daniel Story, Nintendo
- Jamie Madill, Google
- Jan-Harald Fredriksen, Arm
- Jason Ekstrand, Collabora
- Mike Blumenkrantz, Valve
- Ricardo Garcia, Igalia
- Samuel Pitoiset, Valve
- Shahbaz Youssefi, Google
- Stu Smith, AMD
- Tapani Pälli, Intel
Description
This extension adds almost all of the remaining pipeline state as dynamic state to help applications further reduce the number of monolithic pipelines they need to create and bind.
New Commands
cmdSetAlphaToOneEnableEXT
cmdSetColorBlendAdvancedEXT
cmdSetColorBlendEnableEXT
cmdSetColorBlendEquationEXT
cmdSetColorWriteMaskEXT
cmdSetConservativeRasterizationModeEXT
cmdSetCoverageModulationModeNV
cmdSetCoverageModulationTableEnableNV
cmdSetCoverageModulationTableNV
cmdSetCoverageReductionModeNV
cmdSetCoverageToColorEnableNV
cmdSetCoverageToColorLocationNV
cmdSetDepthClampEnableEXT
cmdSetDepthClipEnableEXT
cmdSetDepthClipNegativeOneToOneEXT
cmdSetExtraPrimitiveOverestimationSizeEXT
cmdSetLineRasterizationModeEXT
cmdSetLineStippleEnableEXT
cmdSetLogicOpEnableEXT
cmdSetPolygonModeEXT
cmdSetProvokingVertexModeEXT
cmdSetRasterizationSamplesEXT
cmdSetRasterizationStreamEXT
cmdSetRepresentativeFragmentTestEnableNV
cmdSetSampleLocationsEnableEXT
cmdSetSampleMaskEXT
cmdSetShadingRateImageEnableNV
cmdSetTessellationDomainOriginEXT
cmdSetViewportSwizzleNV
cmdSetViewportWScalingEnableNV
New Structures
ColorBlendEquationEXT
Extending
PhysicalDeviceFeatures2
,DeviceCreateInfo
:Extending
PhysicalDeviceProperties2
:
New Enum Constants
EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION
Extending
DynamicState
:DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT
DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT
DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT
DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT
DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT
DYNAMIC_STATE_COLOR_WRITE_MASK_EXT
DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT
DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV
DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV
DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV
DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV
DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV
DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV
DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT
DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT
DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT
DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT
DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT
DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT
DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT
DYNAMIC_STATE_POLYGON_MODE_EXT
DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT
DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT
DYNAMIC_STATE_RASTERIZATION_STREAM_EXT
DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV
DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT
DYNAMIC_STATE_SAMPLE_MASK_EXT
DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV
DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT
DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV
DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV
Extending
StructureType
:
Issues
1) What about the VkPipelineMultisampleStateCreateInfo state
sampleShadingEnable
and minSampleShading
?
- UNRESOLVED
sampleShadingEnable
andminSampleShading
are required when compiling the fragment shader, and it is not meaningful to set them dynamically since they always need to match the fragment shader state, so this hardware state may as well just come from the pipeline with the fragment shader.
Version History
Revision 2, 2022-07-18 (Piers Daniell)
- Added rasterizationSamples
Revision 1, 2022-05-18 (Piers Daniell)
- Internal revisions
See Also
ColorBlendAdvancedEXT
, ColorBlendEquationEXT
,
PhysicalDeviceExtendedDynamicState3FeaturesEXT
,
PhysicalDeviceExtendedDynamicState3PropertiesEXT
,
cmdSetAlphaToCoverageEnableEXT
, cmdSetAlphaToOneEnableEXT
,
cmdSetColorBlendAdvancedEXT
, cmdSetColorBlendEnableEXT
,
cmdSetColorBlendEquationEXT
, cmdSetColorWriteMaskEXT
,
cmdSetConservativeRasterizationModeEXT
,
cmdSetCoverageModulationModeNV
,
cmdSetCoverageModulationTableEnableNV
,
cmdSetCoverageModulationTableNV
, cmdSetCoverageReductionModeNV
,
cmdSetCoverageToColorEnableNV
, cmdSetCoverageToColorLocationNV
,
cmdSetDepthClampEnableEXT
, cmdSetDepthClipEnableEXT
,
cmdSetDepthClipNegativeOneToOneEXT
,
cmdSetExtraPrimitiveOverestimationSizeEXT
,
cmdSetLineRasterizationModeEXT
, cmdSetLineStippleEnableEXT
,
cmdSetLogicOpEnableEXT
, cmdSetPolygonModeEXT
,
cmdSetProvokingVertexModeEXT
, cmdSetRasterizationSamplesEXT
,
cmdSetRasterizationStreamEXT
,
cmdSetRepresentativeFragmentTestEnableNV
,
cmdSetSampleLocationsEnableEXT
, cmdSetSampleMaskEXT
,
cmdSetShadingRateImageEnableNV
, cmdSetTessellationDomainOriginEXT
,
cmdSetViewportSwizzleNV
, cmdSetViewportWScalingEnableNV
Document Notes
For more information, see the Vulkan Specification
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Synopsis
- cmdSetTessellationDomainOriginEXT :: forall io. MonadIO io => CommandBuffer -> TessellationDomainOrigin -> io ()
- cmdSetDepthClampEnableEXT :: forall io. MonadIO io => CommandBuffer -> ("depthClampEnable" ::: Bool) -> io ()
- cmdSetPolygonModeEXT :: forall io. MonadIO io => CommandBuffer -> PolygonMode -> io ()
- cmdSetRasterizationSamplesEXT :: forall io. MonadIO io => CommandBuffer -> ("rasterizationSamples" ::: SampleCountFlagBits) -> io ()
- cmdSetSampleMaskEXT :: forall io. MonadIO io => CommandBuffer -> ("samples" ::: SampleCountFlagBits) -> ("sampleMask" ::: Vector SampleMask) -> io ()
- cmdSetAlphaToCoverageEnableEXT :: forall io. MonadIO io => CommandBuffer -> ("alphaToCoverageEnable" ::: Bool) -> io ()
- cmdSetAlphaToOneEnableEXT :: forall io. MonadIO io => CommandBuffer -> ("alphaToOneEnable" ::: Bool) -> io ()
- cmdSetLogicOpEnableEXT :: forall io. MonadIO io => CommandBuffer -> ("logicOpEnable" ::: Bool) -> io ()
- cmdSetColorBlendEnableEXT :: forall io. MonadIO io => CommandBuffer -> ("firstAttachment" ::: Word32) -> ("colorBlendEnables" ::: Vector Bool) -> io ()
- cmdSetColorBlendEquationEXT :: forall io. MonadIO io => CommandBuffer -> ("firstAttachment" ::: Word32) -> ("colorBlendEquations" ::: Vector ColorBlendEquationEXT) -> io ()
- cmdSetColorWriteMaskEXT :: forall io. MonadIO io => CommandBuffer -> ("firstAttachment" ::: Word32) -> ("colorWriteMasks" ::: Vector ColorComponentFlags) -> io ()
- cmdSetRasterizationStreamEXT :: forall io. MonadIO io => CommandBuffer -> ("rasterizationStream" ::: Word32) -> io ()
- cmdSetConservativeRasterizationModeEXT :: forall io. MonadIO io => CommandBuffer -> ConservativeRasterizationModeEXT -> io ()
- cmdSetExtraPrimitiveOverestimationSizeEXT :: forall io. MonadIO io => CommandBuffer -> ("extraPrimitiveOverestimationSize" ::: Float) -> io ()
- cmdSetDepthClipEnableEXT :: forall io. MonadIO io => CommandBuffer -> ("depthClipEnable" ::: Bool) -> io ()
- cmdSetSampleLocationsEnableEXT :: forall io. MonadIO io => CommandBuffer -> ("sampleLocationsEnable" ::: Bool) -> io ()
- cmdSetColorBlendAdvancedEXT :: forall io. MonadIO io => CommandBuffer -> ("firstAttachment" ::: Word32) -> ("colorBlendAdvanced" ::: Vector ColorBlendAdvancedEXT) -> io ()
- cmdSetProvokingVertexModeEXT :: forall io. MonadIO io => CommandBuffer -> ProvokingVertexModeEXT -> io ()
- cmdSetLineRasterizationModeEXT :: forall io. MonadIO io => CommandBuffer -> LineRasterizationModeEXT -> io ()
- cmdSetLineStippleEnableEXT :: forall io. MonadIO io => CommandBuffer -> ("stippledLineEnable" ::: Bool) -> io ()
- cmdSetDepthClipNegativeOneToOneEXT :: forall io. MonadIO io => CommandBuffer -> ("negativeOneToOne" ::: Bool) -> io ()
- cmdSetViewportWScalingEnableNV :: forall io. MonadIO io => CommandBuffer -> ("viewportWScalingEnable" ::: Bool) -> io ()
- cmdSetViewportSwizzleNV :: forall io. MonadIO io => CommandBuffer -> ("firstViewport" ::: Word32) -> ("viewportSwizzles" ::: Vector ViewportSwizzleNV) -> io ()
- cmdSetCoverageToColorEnableNV :: forall io. MonadIO io => CommandBuffer -> ("coverageToColorEnable" ::: Bool) -> io ()
- cmdSetCoverageToColorLocationNV :: forall io. MonadIO io => CommandBuffer -> ("coverageToColorLocation" ::: Word32) -> io ()
- cmdSetCoverageModulationModeNV :: forall io. MonadIO io => CommandBuffer -> CoverageModulationModeNV -> io ()
- cmdSetCoverageModulationTableEnableNV :: forall io. MonadIO io => CommandBuffer -> ("coverageModulationTableEnable" ::: Bool) -> io ()
- cmdSetCoverageModulationTableNV :: forall io. MonadIO io => CommandBuffer -> ("coverageModulationTable" ::: Vector Float) -> io ()
- cmdSetShadingRateImageEnableNV :: forall io. MonadIO io => CommandBuffer -> ("shadingRateImageEnable" ::: Bool) -> io ()
- cmdSetCoverageReductionModeNV :: forall io. MonadIO io => CommandBuffer -> CoverageReductionModeNV -> io ()
- cmdSetRepresentativeFragmentTestEnableNV :: forall io. MonadIO io => CommandBuffer -> ("representativeFragmentTestEnable" ::: Bool) -> io ()
- data PhysicalDeviceExtendedDynamicState3FeaturesEXT = PhysicalDeviceExtendedDynamicState3FeaturesEXT {
- extendedDynamicState3TessellationDomainOrigin :: Bool
- extendedDynamicState3DepthClampEnable :: Bool
- extendedDynamicState3PolygonMode :: Bool
- extendedDynamicState3RasterizationSamples :: Bool
- extendedDynamicState3SampleMask :: Bool
- extendedDynamicState3AlphaToCoverageEnable :: Bool
- extendedDynamicState3AlphaToOneEnable :: Bool
- extendedDynamicState3LogicOpEnable :: Bool
- extendedDynamicState3ColorBlendEnable :: Bool
- extendedDynamicState3ColorBlendEquation :: Bool
- extendedDynamicState3ColorWriteMask :: Bool
- extendedDynamicState3RasterizationStream :: Bool
- extendedDynamicState3ConservativeRasterizationMode :: Bool
- extendedDynamicState3ExtraPrimitiveOverestimationSize :: Bool
- extendedDynamicState3DepthClipEnable :: Bool
- extendedDynamicState3SampleLocationsEnable :: Bool
- extendedDynamicState3ColorBlendAdvanced :: Bool
- extendedDynamicState3ProvokingVertexMode :: Bool
- extendedDynamicState3LineRasterizationMode :: Bool
- extendedDynamicState3LineStippleEnable :: Bool
- extendedDynamicState3DepthClipNegativeOneToOne :: Bool
- extendedDynamicState3ViewportWScalingEnable :: Bool
- extendedDynamicState3ViewportSwizzle :: Bool
- extendedDynamicState3CoverageToColorEnable :: Bool
- extendedDynamicState3CoverageToColorLocation :: Bool
- extendedDynamicState3CoverageModulationMode :: Bool
- extendedDynamicState3CoverageModulationTableEnable :: Bool
- extendedDynamicState3CoverageModulationTable :: Bool
- extendedDynamicState3CoverageReductionMode :: Bool
- extendedDynamicState3RepresentativeFragmentTestEnable :: Bool
- extendedDynamicState3ShadingRateImageEnable :: Bool
- data PhysicalDeviceExtendedDynamicState3PropertiesEXT = PhysicalDeviceExtendedDynamicState3PropertiesEXT {}
- data ColorBlendEquationEXT = ColorBlendEquationEXT {}
- data ColorBlendAdvancedEXT = ColorBlendAdvancedEXT {}
- type EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION = 2
- pattern EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION :: forall a. Integral a => a
- type EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME = "VK_EXT_extended_dynamic_state3"
- pattern EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
- data ViewportSwizzleNV = ViewportSwizzleNV {}
- newtype ViewportCoordinateSwizzleNV where
- ViewportCoordinateSwizzleNV Int32
- pattern VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV :: ViewportCoordinateSwizzleNV
- pattern VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV :: ViewportCoordinateSwizzleNV
- pattern VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV :: ViewportCoordinateSwizzleNV
- pattern VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV :: ViewportCoordinateSwizzleNV
- pattern VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV :: ViewportCoordinateSwizzleNV
- pattern VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV :: ViewportCoordinateSwizzleNV
- pattern VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV :: ViewportCoordinateSwizzleNV
- pattern VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV :: ViewportCoordinateSwizzleNV
- newtype BlendOverlapEXT where
- BlendOverlapEXT Int32
- pattern BLEND_OVERLAP_UNCORRELATED_EXT :: BlendOverlapEXT
- pattern BLEND_OVERLAP_DISJOINT_EXT :: BlendOverlapEXT
- pattern BLEND_OVERLAP_CONJOINT_EXT :: BlendOverlapEXT
- newtype CoverageModulationModeNV where
- CoverageModulationModeNV Int32
- pattern COVERAGE_MODULATION_MODE_NONE_NV :: CoverageModulationModeNV
- pattern COVERAGE_MODULATION_MODE_RGB_NV :: CoverageModulationModeNV
- pattern COVERAGE_MODULATION_MODE_ALPHA_NV :: CoverageModulationModeNV
- pattern COVERAGE_MODULATION_MODE_RGBA_NV :: CoverageModulationModeNV
- newtype CoverageReductionModeNV where
- newtype ConservativeRasterizationModeEXT where
- ConservativeRasterizationModeEXT Int32
- pattern CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT :: ConservativeRasterizationModeEXT
- pattern CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT :: ConservativeRasterizationModeEXT
- pattern CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT :: ConservativeRasterizationModeEXT
- newtype LineRasterizationModeEXT where
- LineRasterizationModeEXT Int32
- pattern LINE_RASTERIZATION_MODE_DEFAULT_EXT :: LineRasterizationModeEXT
- pattern LINE_RASTERIZATION_MODE_RECTANGULAR_EXT :: LineRasterizationModeEXT
- pattern LINE_RASTERIZATION_MODE_BRESENHAM_EXT :: LineRasterizationModeEXT
- pattern LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT :: LineRasterizationModeEXT
- newtype ProvokingVertexModeEXT where
Documentation
cmdSetTessellationDomainOriginEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> TessellationDomainOrigin |
|
-> io () |
vkCmdSetTessellationDomainOriginEXT - Specify the origin of the tessellation domain space dynamically for a command buffer
Description
This command sets the origin of the tessellation domain space for
subsequent drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineTessellationDomainOriginStateCreateInfo
::domainOrigin
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3TessellationDomainOrigin feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
domainOrigin
must be a validTessellationDomainOrigin
value -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
TessellationDomainOrigin
cmdSetDepthClampEnableEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("depthClampEnable" ::: Bool) |
|
-> io () |
vkCmdSetDepthClampEnableEXT - Specify dynamically whether depth clamping is enabled in the command buffer
Description
This command sets whether depth clamping is enabled or disabled for
subsequent drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationStateCreateInfo
::depthClampEnable
value used to create the currently active pipeline.
If the depth clamping state is changed dynamically, and the pipeline was
not created with
DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT
enabled, then depth clipping is enabled when depth clamping is disabled
and vice versa.
Valid Usage
- The extendedDynamicState3DepthClampEnable feature must be enabled
- If the
depthClamp
feature is not enabled,
depthClampEnable
must beFALSE
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> PolygonMode |
|
-> io () |
vkCmdSetPolygonModeEXT - Specify polygon mode dynamically for a command buffer
Description
This command sets the polygon mode for subsequent drawing commands when
the graphics pipeline is created with
DYNAMIC_STATE_POLYGON_MODE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationStateCreateInfo
::polygonMode
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3PolygonMode feature must be enabled
- If the
fillModeNonSolid
feature is not enabled,
polygonMode
must bePOLYGON_MODE_FILL
orPOLYGON_MODE_FILL_RECTANGLE_NV
- If the
VK_NV_fill_rectangle
extension is not enabled,polygonMode
must not bePOLYGON_MODE_FILL_RECTANGLE_NV
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
polygonMode
must be a validPolygonMode
value -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetRasterizationSamplesEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("rasterizationSamples" ::: SampleCountFlagBits) |
|
-> io () |
vkCmdSetRasterizationSamplesEXT - Specify the rasterization samples dynamically for a command buffer
Description
This command sets the rasterizationSamples
for subsequent drawing
commands when the graphics pipeline is created with
DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineMultisampleStateCreateInfo
::rasterizationSamples
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3RasterizationSamples feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
rasterizationSamples
must be a validSampleCountFlagBits
value -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
SampleCountFlagBits
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("samples" ::: SampleCountFlagBits) |
|
-> ("sampleMask" ::: Vector SampleMask) |
|
-> io () |
vkCmdSetSampleMaskEXT - Specify the sample mask dynamically for a command buffer
Description
This command sets the sample mask for subsequent drawing commands when
the graphics pipeline is created with
DYNAMIC_STATE_SAMPLE_MASK_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineMultisampleStateCreateInfo
::pSampleMask
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3SampleMask feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
samples
must be a validSampleCountFlagBits
value -
pSampleMask
must be a valid pointer to an array of \(\lceil{\mathit{samples} \over 32}\rceil\)SampleMask
values -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
SampleCountFlagBits
,
SampleMask
cmdSetAlphaToCoverageEnableEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("alphaToCoverageEnable" ::: Bool) |
|
-> io () |
vkCmdSetAlphaToCoverageEnableEXT - Specify the alpha to coverage enable state dynamically for a command buffer
Description
This command sets the alphaToCoverageEnable
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineMultisampleStateCreateInfo
::alphaToCoverageEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3AlphaToCoverageEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetAlphaToOneEnableEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("alphaToOneEnable" ::: Bool) |
|
-> io () |
vkCmdSetAlphaToOneEnableEXT - Specify the alpha to one enable state dynamically for a command buffer
Description
This command sets the alphaToOneEnable
state for subsequent drawing
commands when the graphics pipeline is created with
DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineMultisampleStateCreateInfo
::alphaToOneEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3AlphaToOneEnable feature must be enabled
- If the
alphaToOne
feature is not enabled,
alphaToOneEnable
must beFALSE
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetLogicOpEnableEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("logicOpEnable" ::: Bool) |
|
-> io () |
vkCmdSetLogicOpEnableEXT - Specify dynamically whether logical operations are enabled for a command buffer
Description
This command sets whether logical operations are enabled for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT
set
in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineColorBlendStateCreateInfo
::logicOpEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3LogicOpEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetColorBlendEnableEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("firstAttachment" ::: Word32) |
|
-> ("colorBlendEnables" ::: Vector Bool) |
|
-> io () |
vkCmdSetColorBlendEnableEXT - Specify the blendEnable
for each
attachment dynamically for a command buffer
Description
This command sets the color blending enable of the specified color
attachments for subsequent drawing commands when the graphics pipeline
is created with
DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineColorBlendAttachmentState
::blendEnable
values used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ColorBlendEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
pColorBlendEnables
must be a valid pointer to an array ofattachmentCount
Bool32
values -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
-
attachmentCount
must be greater than0
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetColorBlendEquationEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("firstAttachment" ::: Word32) |
|
-> ("colorBlendEquations" ::: Vector ColorBlendEquationEXT) |
|
-> io () |
vkCmdSetColorBlendEquationEXT - Specify the blend factors and operations dynamically for a command buffer
Description
This command sets the color blending factors and operations of the
specified attachments for subsequent drawing commands when the graphics
pipeline is created with
DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineColorBlendAttachmentState
::srcColorBlendFactor
,
PipelineColorBlendAttachmentState
::dstColorBlendFactor
,
PipelineColorBlendAttachmentState
::colorBlendOp
,
PipelineColorBlendAttachmentState
::srcAlphaBlendFactor
,
PipelineColorBlendAttachmentState
::dstAlphaBlendFactor
,
and
PipelineColorBlendAttachmentState
::alphaBlendOp
values used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ColorBlendEquation feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
pColorBlendEquations
must be a valid pointer to an array ofattachmentCount
validColorBlendEquationEXT
structures -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
-
attachmentCount
must be greater than0
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
ColorBlendEquationEXT
, CommandBuffer
cmdSetColorWriteMaskEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("firstAttachment" ::: Word32) |
|
-> ("colorWriteMasks" ::: Vector ColorComponentFlags) |
|
-> io () |
vkCmdSetColorWriteMaskEXT - Specify the color write masks for each attachment dynamically for a command buffer
Description
This command sets the color write masks of the specified attachments for
subsequent drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_COLOR_WRITE_MASK_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineColorBlendAttachmentState
::colorWriteMask
values used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ColorWriteMask feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
pColorWriteMasks
must be a valid pointer to an array ofattachmentCount
valid combinations ofColorComponentFlagBits
values -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
-
attachmentCount
must be greater than0
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
ColorComponentFlags
,
CommandBuffer
cmdSetRasterizationStreamEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("rasterizationStream" ::: Word32) |
|
-> io () |
vkCmdSetRasterizationStreamEXT - Specify the rasterization stream dynamically for a command buffer
Description
This command sets the rasterizationStream
state for subsequent drawing
commands when the graphics pipeline is created with
DYNAMIC_STATE_RASTERIZATION_STREAM_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationStateStreamCreateInfoEXT
::rasterizationStream
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3RasterizationStream feature must be enabled
- The transformFeedback feature must be enabled
-
rasterizationStream
must be less thanPhysicalDeviceTransformFeedbackPropertiesEXT
::maxTransformFeedbackStreams
-
rasterizationStream
must be zero ifPhysicalDeviceTransformFeedbackPropertiesEXT
::transformFeedbackRasterizationStreamSelect
isFALSE
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetConservativeRasterizationModeEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ConservativeRasterizationModeEXT |
|
-> io () |
vkCmdSetConservativeRasterizationModeEXT - Specify the conservative rasterization mode dynamically for a command buffer
Description
This command sets the conservativeRasterizationMode
state for
subsequent drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationConservativeStateCreateInfoEXT
::conservativeRasterizationMode
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ConservativeRasterizationMode feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
conservativeRasterizationMode
must be a validConservativeRasterizationModeEXT
value -
commandBuffer
must be in the recording state -
The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
ConservativeRasterizationModeEXT
cmdSetExtraPrimitiveOverestimationSizeEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("extraPrimitiveOverestimationSize" ::: Float) |
|
-> io () |
vkCmdSetExtraPrimitiveOverestimationSizeEXT - Specify the conservative rasterization extra primitive overestimation size dynamically for a command buffer
Description
This command sets the extraPrimitiveOverestimationSize
for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationConservativeStateCreateInfoEXT
::extraPrimitiveOverestimationSize
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ExtraPrimitiveOverestimationSize feature must be enabled
-
extraPrimitiveOverestimationSize
must be in the range of0.0
toPhysicalDeviceConservativeRasterizationPropertiesEXT
::maxExtraPrimitiveOverestimationSize
inclusive
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state -
The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetDepthClipEnableEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("depthClipEnable" ::: Bool) |
|
-> io () |
vkCmdSetDepthClipEnableEXT - Specify dynamically whether depth clipping is enabled in the command buffer
Description
This command sets whether depth clipping is enabled or disabled for
subsequent drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationDepthClipStateCreateInfoEXT
::depthClipEnable
value used to create the currently active pipeline, or is set to the
inverse of
PipelineRasterizationStateCreateInfo
::depthClampEnable
if
PipelineRasterizationDepthClipStateCreateInfoEXT
is not specified.
Valid Usage
- The extendedDynamicState3DepthClipEnable feature must be enabled
- The depthClipEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetSampleLocationsEnableEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("sampleLocationsEnable" ::: Bool) |
|
-> io () |
vkCmdSetSampleLocationsEnableEXT - Specify the samples locations enable state dynamically for a command buffer
Description
This command sets the sampleLocationsEnable
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineSampleLocationsStateCreateInfoEXT
::sampleLocationsEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3SampleLocationsEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetColorBlendAdvancedEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("firstAttachment" ::: Word32) |
|
-> ("colorBlendAdvanced" ::: Vector ColorBlendAdvancedEXT) |
|
-> io () |
vkCmdSetColorBlendAdvancedEXT - Specify the advanced color blend state dynamically for a command buffer
Description
This command sets the advanced blend operation parameters of the
specified attachments for subsequent drawing commands when the graphics
pipeline is created with
DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineColorBlendAdvancedStateCreateInfoEXT
::srcPremultiplied
,
PipelineColorBlendAdvancedStateCreateInfoEXT
::dstPremultiplied
,
and
PipelineColorBlendAdvancedStateCreateInfoEXT
::blendOverlap
values used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ColorBlendAdvanced feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
pColorBlendAdvanced
must be a valid pointer to an array ofattachmentCount
validColorBlendAdvancedEXT
structures -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
-
attachmentCount
must be greater than0
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
ColorBlendAdvancedEXT
, CommandBuffer
cmdSetProvokingVertexModeEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ProvokingVertexModeEXT |
|
-> io () |
vkCmdSetProvokingVertexModeEXT - Specify the provoking vertex mode dynamically for a command buffer
Description
This command sets the provokingVertexMode
state for subsequent drawing
commands when the graphics pipeline is created with
DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationProvokingVertexStateCreateInfoEXT
::provokingVertexMode
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ProvokingVertexMode feature must be enabled
- If
provokingVertexMode
isPROVOKING_VERTEX_MODE_LAST_VERTEX_EXT
, then the provokingVertexLast feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
provokingVertexMode
must be a validProvokingVertexModeEXT
value -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
ProvokingVertexModeEXT
cmdSetLineRasterizationModeEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> LineRasterizationModeEXT |
|
-> io () |
vkCmdSetLineRasterizationModeEXT - Specify the line rasterization mode dynamically for a command buffer
Description
This command sets the lineRasterizationMode
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationLineStateCreateInfoEXT
::lineRasterizationMode
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3LineRasterizationMode feature must be enabled
-
If
lineRasterizationMode
isLINE_RASTERIZATION_MODE_RECTANGULAR_EXT
, then the rectangularLines feature must be enabled -
If
lineRasterizationMode
isLINE_RASTERIZATION_MODE_BRESENHAM_EXT
, then the bresenhamLines feature must be enabled -
If
lineRasterizationMode
isLINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT
, then the smoothLines feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
lineRasterizationMode
must be a validLineRasterizationModeEXT
value -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
LineRasterizationModeEXT
cmdSetLineStippleEnableEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("stippledLineEnable" ::: Bool) |
|
-> io () |
vkCmdSetLineStippleEnableEXT - Specify the line stipple enable dynamically for a command buffer
Description
This command sets the stippledLineEnable
state for subsequent drawing
commands when the graphics pipeline is created with
DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRasterizationLineStateCreateInfoEXT
::stippledLineEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3LineStippleEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetDepthClipNegativeOneToOneEXT Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("negativeOneToOne" ::: Bool) |
|
-> io () |
vkCmdSetDepthClipNegativeOneToOneEXT - Specify the negative one to one depth clip mode dynamically for a command buffer
Description
This command sets the negativeOneToOne
state for subsequent drawing
commands when the graphics pipeline is created with
DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineViewportDepthClipControlCreateInfoEXT
::negativeOneToOne
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3DepthClipNegativeOneToOne feature must be enabled
- The depthClipControl feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state -
The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetViewportWScalingEnableNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("viewportWScalingEnable" ::: Bool) |
|
-> io () |
vkCmdSetViewportWScalingEnableNV - Specify the viewport W scaling enable state dynamically for a command buffer
Description
This command sets the viewportWScalingEnable
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineViewportWScalingStateCreateInfoNV
::viewportWScalingEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ViewportWScalingEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetViewportSwizzleNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("firstViewport" ::: Word32) |
|
-> ("viewportSwizzles" ::: Vector ViewportSwizzleNV) |
|
-> io () |
vkCmdSetViewportSwizzleNV - Specify the viewport swizzle state dynamically for a command buffer
Description
This command sets the viewport swizzle state for subsequent drawing
commands when the graphics pipeline is created with
DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV
set
in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineViewportSwizzleStateCreateInfoNV
::viewportCount
,
and
PipelineViewportSwizzleStateCreateInfoNV
::pViewportSwizzles
values used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ViewportSwizzle feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
pViewportSwizzles
must be a valid pointer to an array ofviewportCount
validViewportSwizzleNV
structures -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
-
viewportCount
must be greater than0
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
ViewportSwizzleNV
cmdSetCoverageToColorEnableNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("coverageToColorEnable" ::: Bool) |
|
-> io () |
vkCmdSetCoverageToColorEnableNV - Specify the coverage to color enable state dynamically for a command buffer
Description
This command sets the coverageToColorEnable
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineCoverageToColorStateCreateInfoNV
::coverageToColorEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3CoverageToColorEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetCoverageToColorLocationNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("coverageToColorLocation" ::: Word32) |
|
-> io () |
vkCmdSetCoverageToColorLocationNV - Specify the coverage to color location dynamically for a command buffer
Description
This command sets the coverageToColorLocation
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineCoverageToColorStateCreateInfoNV
::coverageToColorLocation
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3CoverageToColorLocation feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetCoverageModulationModeNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> CoverageModulationModeNV |
|
-> io () |
vkCmdSetCoverageModulationModeNV - Specify the coverage modulation mode dynamically for a command buffer
Description
This command sets the coverageModulationMode
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineCoverageModulationStateCreateInfoNV
::coverageModulationMode
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3CoverageModulationMode feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
coverageModulationMode
must be a validCoverageModulationModeNV
value -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
CoverageModulationModeNV
cmdSetCoverageModulationTableEnableNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("coverageModulationTableEnable" ::: Bool) |
|
-> io () |
vkCmdSetCoverageModulationTableEnableNV - Specify the coverage modulation table enable state dynamically for a command buffer
Description
This command sets the coverageModulationTableEnable
state for
subsequent drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineCoverageModulationStateCreateInfoNV
::coverageModulationTableEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3CoverageModulationTableEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state -
The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetCoverageModulationTableNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("coverageModulationTable" ::: Vector Float) |
|
-> io () |
vkCmdSetCoverageModulationTableNV - Specify the coverage modulation table dynamically for a command buffer
Description
This command sets the table of modulation factors for subsequent drawing
commands when the graphics pipeline is created with
DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineCoverageModulationStateCreateInfoNV
::coverageModulationTableCount
,
and
PipelineCoverageModulationStateCreateInfoNV
::pCoverageModulationTable
values used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3CoverageModulationTable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
pCoverageModulationTable
must be a valid pointer to an array ofcoverageModulationTableCount
float
values -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
-
coverageModulationTableCount
must be greater than0
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetShadingRateImageEnableNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("shadingRateImageEnable" ::: Bool) |
|
-> io () |
vkCmdSetShadingRateImageEnableNV - Specify the shading rate image enable state dynamically for a command buffer
Description
This command sets the shadingRateImageEnable
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineViewportShadingRateImageStateCreateInfoNV
::shadingRateImageEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3ShadingRateImageEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
cmdSetCoverageReductionModeNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> CoverageReductionModeNV |
|
-> io () |
vkCmdSetCoverageReductionModeNV - Specify the coverage reduction mode dynamically for a command buffer
Description
This command sets the coverageReductionMode
state for subsequent
drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineCoverageReductionStateCreateInfoNV
::coverageReductionMode
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3CoverageReductionMode feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
coverageReductionMode
must be a validCoverageReductionModeNV
value -
commandBuffer
must be in the recording state - The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
VK_EXT_extended_dynamic_state3,
CommandBuffer
,
CoverageReductionModeNV
cmdSetRepresentativeFragmentTestEnableNV Source #
:: forall io. MonadIO io | |
=> CommandBuffer |
|
-> ("representativeFragmentTestEnable" ::: Bool) |
|
-> io () |
vkCmdSetRepresentativeFragmentTestEnableNV - Specify the representative fragment test enable dynamically for a command buffer
Description
This command sets the representativeFragmentTestEnable
state for
subsequent drawing commands when the graphics pipeline is created with
DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV
set in
PipelineDynamicStateCreateInfo
::pDynamicStates
.
Otherwise, this state is specified by the
PipelineRepresentativeFragmentTestStateCreateInfoNV
::representativeFragmentTestEnable
value used to create the currently active pipeline.
Valid Usage
- The extendedDynamicState3RepresentativeFragmentTestEnable feature must be enabled
Valid Usage (Implicit)
-
commandBuffer
must be a validCommandBuffer
handle
-
commandBuffer
must be in the recording state -
The
CommandPool
thatcommandBuffer
was allocated from must support graphics operations - This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized
- Host access to the
CommandPool
thatcommandBuffer
was allocated from must be externally synchronized
Command Properties
'
Command Buffer Levels | Render Pass Scope | Video Coding Scope | Supported Queue Types | Command Type |
---|---|---|---|---|
Primary Secondary | Both | Outside | Graphics | State |
See Also
data PhysicalDeviceExtendedDynamicState3FeaturesEXT Source #
VkPhysicalDeviceExtendedDynamicState3FeaturesEXT - Structure describing what extended dynamic state is supported by the implementation
Members
This structure describes the following features:
Description
If the PhysicalDeviceExtendedDynamicState3FeaturesEXT
structure is
included in the pNext
chain of the
PhysicalDeviceFeatures2
structure passed to
getPhysicalDeviceFeatures2
,
it is filled in to indicate whether each corresponding feature is
supported. PhysicalDeviceExtendedDynamicState3FeaturesEXT
can also
be used in the pNext
chain of DeviceCreateInfo
to selectively enable these features.
Valid Usage (Implicit)
See Also
Instances
data PhysicalDeviceExtendedDynamicState3PropertiesEXT Source #
VkPhysicalDeviceExtendedDynamicState3PropertiesEXT - Structure describing capabilities of extended dynamic state
Description
If the PhysicalDeviceExtendedDynamicState3PropertiesEXT
structure is
included in the pNext
chain of the
PhysicalDeviceProperties2
structure passed to
getPhysicalDeviceProperties2
,
it is filled in with each corresponding implementation-dependent
property.
Valid Usage (Implicit)
See Also
PhysicalDeviceExtendedDynamicState3PropertiesEXT | |
|
Instances
data ColorBlendEquationEXT Source #
VkColorBlendEquationEXT - Structure specifying the color blend factors and operations for an attachment
Valid Usage
- If the
dualSrcBlend
feature is not enabled,
srcColorBlendFactor
must not beBLEND_FACTOR_SRC1_COLOR
,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR
,BLEND_FACTOR_SRC1_ALPHA
, orBLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
- If the
dualSrcBlend
feature is not enabled,
dstColorBlendFactor
must not beBLEND_FACTOR_SRC1_COLOR
,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR
,BLEND_FACTOR_SRC1_ALPHA
, orBLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
- If the
dualSrcBlend
feature is not enabled,
srcAlphaBlendFactor
must not beBLEND_FACTOR_SRC1_COLOR
,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR
,BLEND_FACTOR_SRC1_ALPHA
, orBLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
- If the
dualSrcBlend
feature is not enabled,
dstAlphaBlendFactor
must not beBLEND_FACTOR_SRC1_COLOR
,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR
,BLEND_FACTOR_SRC1_ALPHA
, orBLEND_FACTOR_ONE_MINUS_SRC1_ALPHA
-
colorBlendOp
andalphaBlendOp
must not beBLEND_OP_ZERO_EXT
,BLEND_OP_SRC_EXT
,BLEND_OP_DST_EXT
,BLEND_OP_SRC_OVER_EXT
,BLEND_OP_DST_OVER_EXT
,BLEND_OP_SRC_IN_EXT
,BLEND_OP_DST_IN_EXT
,BLEND_OP_SRC_OUT_EXT
,BLEND_OP_DST_OUT_EXT
,BLEND_OP_SRC_ATOP_EXT
,BLEND_OP_DST_ATOP_EXT
,BLEND_OP_XOR_EXT
,BLEND_OP_INVERT_EXT
,BLEND_OP_INVERT_RGB_EXT
,BLEND_OP_LINEARDODGE_EXT
,BLEND_OP_LINEARBURN_EXT
,BLEND_OP_VIVIDLIGHT_EXT
,BLEND_OP_LINEARLIGHT_EXT
,BLEND_OP_PINLIGHT_EXT
,BLEND_OP_HARDMIX_EXT
,BLEND_OP_PLUS_EXT
,BLEND_OP_PLUS_CLAMPED_EXT
,BLEND_OP_PLUS_CLAMPED_ALPHA_EXT
,BLEND_OP_PLUS_DARKER_EXT
,BLEND_OP_MINUS_EXT
,BLEND_OP_MINUS_CLAMPED_EXT
,BLEND_OP_CONTRAST_EXT
,BLEND_OP_INVERT_OVG_EXT
,BLEND_OP_RED_EXT
,BLEND_OP_GREEN_EXT
, orBLEND_OP_BLUE_EXT
-
If the
VK_KHR_portability_subset
extension is enabled, andPhysicalDevicePortabilitySubsetFeaturesKHR
::constantAlphaColorBlendFactors
isFALSE
,srcColorBlendFactor
must not beBLEND_FACTOR_CONSTANT_ALPHA
orBLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA
-
If the
VK_KHR_portability_subset
extension is enabled, andPhysicalDevicePortabilitySubsetFeaturesKHR
::constantAlphaColorBlendFactors
isFALSE
,dstColorBlendFactor
must not beBLEND_FACTOR_CONSTANT_ALPHA
orBLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA
Valid Usage (Implicit)
-
srcColorBlendFactor
must be a validBlendFactor
value
-
dstColorBlendFactor
must be a validBlendFactor
value -
colorBlendOp
must be a validBlendOp
value -
srcAlphaBlendFactor
must be a validBlendFactor
value -
dstAlphaBlendFactor
must be a validBlendFactor
value -
alphaBlendOp
must be a validBlendOp
value
See Also
VK_EXT_extended_dynamic_state3,
BlendFactor
,
BlendOp
, cmdSetColorBlendEquationEXT
ColorBlendEquationEXT | |
|
Instances
data ColorBlendAdvancedEXT Source #
VkColorBlendAdvancedEXT - Structure specifying the advanced blend operation parameters for an attachment
Valid Usage
- If the
non-premultiplied source color
property is not supported,
srcPremultiplied
must beTRUE
- If the
non-premultiplied destination color
property is not supported,
dstPremultiplied
must beTRUE
- If the
correlated overlap
property is not supported,
blendOverlap
must beBLEND_OVERLAP_UNCORRELATED_EXT
Valid Usage (Implicit)
-
advancedBlendOp
must be a validBlendOp
value
-
blendOverlap
must be a validBlendOverlapEXT
value
See Also
VK_EXT_extended_dynamic_state3,
BlendOp
,
BlendOverlapEXT
,
Bool32
, cmdSetColorBlendAdvancedEXT
ColorBlendAdvancedEXT | |
|
Instances
pattern EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION :: forall a. Integral a => a Source #
type EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME = "VK_EXT_extended_dynamic_state3" Source #
pattern EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #
data ViewportSwizzleNV Source #
VkViewportSwizzleNV - Structure specifying a viewport swizzle
Valid Usage (Implicit)
See Also
VK_NV_viewport_swizzle,
PipelineViewportSwizzleStateCreateInfoNV
,
ViewportCoordinateSwizzleNV
,
cmdSetViewportSwizzleNV
ViewportSwizzleNV | |
|
Instances
newtype ViewportCoordinateSwizzleNV Source #
VkViewportCoordinateSwizzleNV - Specify how a viewport coordinate is swizzled
Description
These values are described in detail in Viewport Swizzle.
See Also
Instances
newtype BlendOverlapEXT Source #
VkBlendOverlapEXT - Enumerant specifying the blend overlap parameter
Description
'
Overlap Mode | Weighting Equations |
---|---|
BLEND_OVERLAP_UNCORRELATED_EXT
| \[ \begin{aligned} p_0(A_s,A_d) & = A_sA_d \\ p_1(A_s,A_d) & = A_s(1-A_d) \\ p_2(A_s,A_d) & = A_d(1-A_s) \\ \end{aligned}\] |
BLEND_OVERLAP_CONJOINT_EXT
| \[ \begin{aligned} p_0(A_s,A_d) & = min(A_s,A_d) \\ p_1(A_s,A_d) & = max(A_s-A_d,0) \\ p_2(A_s,A_d) & = max(A_d-A_s,0) \\ \end{aligned}\] |
BLEND_OVERLAP_DISJOINT_EXT
| \[ \begin{aligned} p_0(A_s,A_d) & = max(A_s+A_d-1,0) \\ p_1(A_s,A_d) & = min(A_s,1-A_d) \\ p_2(A_s,A_d) & = min(A_d,1-A_s) \\ \end{aligned}\] |
Advanced Blend Overlap Modes
See Also
VK_EXT_blend_operation_advanced,
ColorBlendAdvancedEXT
,
PipelineColorBlendAdvancedStateCreateInfoEXT
pattern BLEND_OVERLAP_UNCORRELATED_EXT :: BlendOverlapEXT |
|
pattern BLEND_OVERLAP_DISJOINT_EXT :: BlendOverlapEXT |
|
pattern BLEND_OVERLAP_CONJOINT_EXT :: BlendOverlapEXT |
|
Instances
newtype CoverageModulationModeNV Source #
VkCoverageModulationModeNV - Specify the coverage modulation mode
See Also
VK_NV_framebuffer_mixed_samples,
PipelineCoverageModulationStateCreateInfoNV
,
cmdSetCoverageModulationModeNV
pattern COVERAGE_MODULATION_MODE_NONE_NV :: CoverageModulationModeNV |
|
pattern COVERAGE_MODULATION_MODE_RGB_NV :: CoverageModulationModeNV |
|
pattern COVERAGE_MODULATION_MODE_ALPHA_NV :: CoverageModulationModeNV |
|
pattern COVERAGE_MODULATION_MODE_RGBA_NV :: CoverageModulationModeNV |
|
Instances
newtype CoverageReductionModeNV Source #
VkCoverageReductionModeNV - Specify the coverage reduction mode
See Also
VK_NV_coverage_reduction_mode,
FramebufferMixedSamplesCombinationNV
,
PipelineCoverageReductionStateCreateInfoNV
,
cmdSetCoverageReductionModeNV
pattern COVERAGE_REDUCTION_MODE_MERGE_NV :: CoverageReductionModeNV |
|
pattern COVERAGE_REDUCTION_MODE_TRUNCATE_NV :: CoverageReductionModeNV |
|
Instances
newtype ConservativeRasterizationModeEXT Source #
VkConservativeRasterizationModeEXT - Specify the conservative rasterization mode
See Also
VK_EXT_conservative_rasterization,
PipelineRasterizationConservativeStateCreateInfoEXT
,
cmdSetConservativeRasterizationModeEXT
pattern CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT :: ConservativeRasterizationModeEXT |
|
pattern CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT :: ConservativeRasterizationModeEXT |
|
pattern CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT :: ConservativeRasterizationModeEXT |
|
Instances
newtype LineRasterizationModeEXT Source #
VkLineRasterizationModeEXT - Line rasterization modes
See Also
VK_EXT_line_rasterization,
PipelineRasterizationLineStateCreateInfoEXT
,
cmdSetLineRasterizationModeEXT
Instances
newtype ProvokingVertexModeEXT Source #
VkProvokingVertexModeEXT - Specify which vertex in a primitive is the provoking vertex
Description
These modes are described more precisely in Primitive Topologies.
See Also
VK_EXT_provoking_vertex,
PipelineRasterizationProvokingVertexStateCreateInfoEXT
,
cmdSetProvokingVertexModeEXT
pattern PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT :: ProvokingVertexModeEXT |
|
pattern PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT :: ProvokingVertexModeEXT |
|