Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- newtype VkCoverageModulationModeNV = VkCoverageModulationModeNV Int32
- pattern VK_COVERAGE_MODULATION_MODE_NONE_NV :: VkCoverageModulationModeNV
- pattern VK_COVERAGE_MODULATION_MODE_RGB_NV :: VkCoverageModulationModeNV
- pattern VK_COVERAGE_MODULATION_MODE_ALPHA_NV :: VkCoverageModulationModeNV
- pattern VK_COVERAGE_MODULATION_MODE_RGBA_NV :: VkCoverageModulationModeNV
- newtype VkPipelineCoverageModulationStateCreateFlagsNV = VkPipelineCoverageModulationStateCreateFlagsNV VkFlags
- pattern VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: VkStructureType
- pattern VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION :: Integral a => a
- pattern VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME :: (Eq a, IsString a) => a
- data VkPipelineCoverageModulationStateCreateInfoNV = VkPipelineCoverageModulationStateCreateInfoNV {}
Documentation
newtype VkCoverageModulationModeNV Source #
VkCoverageModulationModeNV - Specify the discard rectangle mode
See Also
Instances
pattern VK_COVERAGE_MODULATION_MODE_NONE_NV :: VkCoverageModulationModeNV Source #
VK_COVERAGE_MODULATION_MODE_NONE_NV
specifies that no components are
multiplied by the modulation factor.
pattern VK_COVERAGE_MODULATION_MODE_RGB_NV :: VkCoverageModulationModeNV Source #
VK_COVERAGE_MODULATION_MODE_RGB_NV
specifies that the red, green, and
blue components are multiplied by the modulation factor.
pattern VK_COVERAGE_MODULATION_MODE_ALPHA_NV :: VkCoverageModulationModeNV Source #
VK_COVERAGE_MODULATION_MODE_ALPHA_NV
specifies that the alpha
component is multiplied by the modulation factor.
pattern VK_COVERAGE_MODULATION_MODE_RGBA_NV :: VkCoverageModulationModeNV Source #
VK_COVERAGE_MODULATION_MODE_RGBA_NV
specifies that all components are
multiplied by the modulation factor.
newtype VkPipelineCoverageModulationStateCreateFlagsNV Source #
VkPipelineCoverageModulationStateCreateFlagsNV - Reserved for future use
Description
VkPipelineCoverageModulationStateCreateFlagsNV
is a bitmask type for
setting a mask, but is currently reserved for future use.
See Also
Instances
pattern VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: VkStructureType Source #
pattern VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION :: Integral a => a Source #
pattern VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME :: (Eq a, IsString a) => a Source #
data VkPipelineCoverageModulationStateCreateInfoNV Source #
VkPipelineCoverageModulationStateCreateInfoNV - Structure specifying parameters controlling coverage modulation
Description
If coverageModulationTableEnable
is VK_FALSE
, then for each color
sample the associated bits of the fragment’s coverage are counted and
divided by the number of associated bits to produce a modulation factor
R in the range (0,1] (a value of zero would have been killed due to a
color coverage of 0). Specifically:
- N = value of
rasterizationSamples
- M = value of
VkAttachmentDescription
::samples
for any color attachments - R = popcount(associated coverage bits) / (N / M)
If coverageModulationTableEnable
is VK_TRUE
, the value R is computed
using a programmable lookup table. The lookup table has N / M elements,
and the element of the table is selected by:
- R =
pCoverageModulationTable
[popcount(associated coverage bits)-1]
Note that the table does not have an entry for popcount(associated coverage bits) = 0, because such samples would have been killed.
The values of pCoverageModulationTable
may be rounded to an
implementation-dependent precision, which is at least as fine as 1 / N,
and clamped to [0,1].
For each color attachment with a floating point or normalized color
format, each fragment output color value is replicated to M values which
can each be modulated (multiplied) by that color sample’s associated
value of R. Which components are modulated is controlled by
coverageModulationMode
.
If this structure is not present, it is as if coverageModulationMode is
VK_COVERAGE_MODULATION_MODE_NONE_NV
.
Valid Usage
- If
coverageModulationTableEnable
isVK_TRUE
,coverageModulationTableCount
must be equal to the number of rasterization samples divided by the number of color samples in the subpass.
Valid Usage (Implicit)
sType
must beVK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV
flags
must be0
coverageModulationMode
must be a validVkCoverageModulationModeNV
valuecoverageModulationTableCount
must be greater than0
See Also
VkBool32
, VkCoverageModulationModeNV
,
VkPipelineCoverageModulationStateCreateFlagsNV
,
VkStructureType
VkPipelineCoverageModulationStateCreateInfoNV | |
|