HORIZON HASKELLDocslts/ghc-10.0.xfc4e5982026-10-11Search names, modules, packages, or :: a typeCtrl K

GHC 10.0.0.20260917 · lts/ghc-10.0.x · fc4e598 · 2026-10-11

Modulevulkan-3.27GHC2021

Vulkan.Extensions.VK_NV_coverage_reduction_mode

Name

VK_NV_coverage_reduction_mode - device extension

VK_NV_coverage_reduction_mode

Name String

VK_NV_coverage_reduction_mode

Extension Type

Device extension

Registered Extension Number

251

Revision

1

Ratification Status

Not ratified

Extension and Version Dependencies

VK_NV_framebuffer_mixed_samples

and

VK_KHR_get_physical_device_properties2      or

Vulkan Version 1.1

Contact

Other Extension Metadata

Last Modified Date

2019-01-29

Contributors
  • Kedarnath Thangudu, NVIDIA

  • Jeff Bolz, NVIDIA

Description

When using a framebuffer with mixed samples, a per-fragment coverage reduction operation is performed which generates color sample coverage from the pixel coverage. This extension defines the following modes to control how this reduction is performed.

  • Merge: When there are more samples in the pixel coverage than color samples, there is an implementation-dependent association of each pixel coverage sample to a color sample. In the merge mode, the color sample coverage is computed such that only if any associated sample in the pixel coverage is covered, the color sample is covered. This is the default mode.

  • Truncate: When there are more raster samples (N) than color samples (M), there is one to one association of the first M raster samples to the M color samples; other raster samples are ignored.

When the number of raster samples is equal to the color samples, there is a one to one mapping between them in either of the above modes.

The new command getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV can be used to query the various raster, color, depth/stencil sample count and reduction mode combinations that are supported by the implementation. This extension would allow an implementation to support the behavior of both VK_NV_framebuffer_mixed_samples and VK_AMD_mixed_attachment_samples extensions simultaneously.

New Commands

New Structures

New Enums

New Bitmasks

New Enum Constants

Version History

  • Revision 1, 2019-01-29 (Kedarnath Thangudu)

    • Internal revisions

See Also

No cross-references are available

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.

  • 7 types
  • 1 value
  • Packagevulkan-3.27
  • Exports12
  • LanguageGHC2021
  • LicenceBSD-3-Clause
  • SourceVK_NV_coverage_reduction_mode.hs
valuegetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
  1. :: MonadIO io
  2. => PhysicalDevice

    physicalDevice is the physical device from which to query the set of combinations.

  3. -> io (Result, "combinations" ::: Vector FramebufferMixedSamplesCombinationNV)
#

vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV - Query supported sample count combinations

Description

If pCombinations is NULL, then the number of supported combinations for the given physicalDevice is returned in pCombinationCount. Otherwise, pCombinationCount must point to a variable set by the application to the number of elements in the pCombinations array, and on return the variable is overwritten with the number of values actually written to pCombinations. If the value of pCombinationCount is less than the number of combinations supported for the given physicalDevice, at most pCombinationCount values will be written to pCombinations, and INCOMPLETE will be returned instead of SUCCESS, to indicate that not all the supported values were returned.

Valid Usage (Implicit)

  • pCombinationCount must be a valid pointer to a uint32_t value

  • If the value referenced by pCombinationCount is not 0, and pCombinations is not NULL, pCombinations must be a valid pointer to an array of pCombinationCount FramebufferMixedSamplesCombinationNV structures

Return Codes

Success
Failure

See Also

VK_NV_coverage_reduction_mode, FramebufferMixedSamplesCombinationNV, PhysicalDevice

VkPhysicalDeviceCoverageReductionModeFeaturesNV - Structure describing the coverage reduction mode features that can be supported by an implementation

Members

This structure describes the following feature:

Description

If the PhysicalDeviceCoverageReductionModeFeaturesNV 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. If the application wishes to use a Device with any features described by PhysicalDeviceCoverageReductionModeFeaturesNV, it must add an instance of the structure, with the desired feature members set to TRUE, to the pNext chain of DeviceCreateInfo when creating the Device.

Structure Chaining

Extends the structures

See Also

VK_NV_coverage_reduction_mode, Bool32, StructureType

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkPipelineCoverageReductionStateCreateInfoNV - Structure specifying parameters controlling coverage reduction

Description

If this structure is not included in the pNext chain, or if the extension is not enabled, the default coverage reduction mode is inferred as follows:

  • If the VK_NV_framebuffer_mixed_samples extension is enabled, then it is as if the coverageReductionMode is COVERAGE_REDUCTION_MODE_MERGE_NV.

  • If the VK_AMD_mixed_attachment_samples extension is enabled, then it is as if the coverageReductionMode is COVERAGE_REDUCTION_MODE_TRUNCATE_NV.

  • If both VK_NV_framebuffer_mixed_samples and VK_AMD_mixed_attachment_samples are enabled, then the default coverage reduction mode is implementation-dependent.

Valid Usage (Implicit)

Structure Chaining

Extends the structure

See Also

VK_NV_coverage_reduction_mode, CoverageReductionModeNV, PipelineCoverageReductionStateCreateFlagsNV, StructureType

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkFramebufferMixedSamplesCombinationNV - Structure specifying a supported sample count combination

Valid Usage (Implicit)

See Also

VK_NV_coverage_reduction_mode, CoverageReductionModeNV, SampleCountFlagBits, SampleCountFlags, StructureType, getPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkPipelineCoverageReductionStateCreateFlagsNV - Reserved for future use

Description

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

See Also

VK_NV_coverage_reduction_mode, Flags, PipelineCoverageReductionStateCreateInfoNV

Instances8Eq, Ord, Read, Show, Bits, FiniteBits, …
newtypenewtype CoverageReductionModeNV
#

VkCoverageReductionModeNV - Specify the coverage reduction mode

Description

  • COVERAGE_REDUCTION_MODE_MERGE_NV specifies that each color sample will be associated with an implementation-dependent subset of samples in the pixel coverage. If any of those associated samples are covered, the color sample is covered.

  • COVERAGE_REDUCTION_MODE_TRUNCATE_NV specifies that for color samples present in the color attachments, a color sample is covered if the pixel coverage sample with the same sample index i is covered; other pixel coverage samples are discarded.

See Also

VK_NV_coverage_reduction_mode, FramebufferMixedSamplesCombinationNV, PipelineCoverageReductionStateCreateInfoNV, cmdSetCoverageReductionModeNV

Instances6Eq, Ord, Read, Show, Storable, Zero