Class NVCoverageReductionMode
- java.lang.Object
-
- org.lwjgl.vulkan.NVCoverageReductionMode
-
public class NVCoverageReductionMode extends java.lang.Object
When using a framebuffer with mixed samples, a per-fragment coverage reduction operation is performed which generates a color sample mask from the coverage mask. This extension defines the following modes to control how this reduction is performed.- Merge: When there are more raster samples than color samples, there is an implementation dependent association of each raster sample to a color sample. In the merge mode, the reduced color sample mask is computed such that the bit for each color sample is 1 if any of the associated bits in the fragment’s coverage is on, and 0 otherwise. 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 and the coverage bits for the 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 bothVK_NV_framebuffer_mixed_samples
andVK_AMD_mixed_attachment_samples
extensions simultaneously.- Name String
VK_NV_coverage_reduction_mode
- Extension Type
- Device extension
- Registered Extension Number
- 251
- Revision
- 1
- Extension and Version Dependencies
- Requires Vulkan 1.0
- Requires
VK_NV_framebuffer_mixed_samples
- Contact
- Kedarnath Thangudu kthangudu
- Last Modified Date
- 2019-01-29
- Contributors
- Kedarnath Thangudu, NVIDIA
- Jeff Bolz, NVIDIA
-
-
Field Summary
Fields Modifier and Type Field Description static int
VK_COVERAGE_REDUCTION_MODE_MERGE_NV
VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NVVkCoverageReductionModeNV - Specify the coverage reduction modestatic java.lang.String
VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME
The extension name.static int
VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION
The extension specification version.static int
VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV
VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NVExtendsVkStructureType
.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static int
nvkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(VkPhysicalDevice physicalDevice, long pCombinationCount, long pCombinations)
Unsafe version of:GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
static int
vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(VkPhysicalDevice physicalDevice, int[] pCombinationCount, VkFramebufferMixedSamplesCombinationNV.Buffer pCombinations)
Array version of:GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
static int
vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(VkPhysicalDevice physicalDevice, java.nio.IntBuffer pCombinationCount, VkFramebufferMixedSamplesCombinationNV.Buffer pCombinations)
Query supported sample count combinations.
-
-
-
Field Detail
-
VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION
The extension specification version.
-
VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME
The extension name.
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV, VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV
-
VK_COVERAGE_REDUCTION_MODE_MERGE_NV, VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV
VkCoverageReductionModeNV - Specify the coverage reduction modeDescription
COVERAGE_REDUCTION_MODE_MERGE_NV
: In this mode, there is an implementation-dependent association of each raster sample to a color sample. The reduced color sample mask is computed such that the bit for each color sample is 1 if any of the associated bits in the fragment’s coverage is on, and 0 otherwise.COVERAGE_REDUCTION_MODE_TRUNCATE_NV
: In this mode, only the firstM
raster samples are associated with the color samples such that raster samplei
maps to color samplei
, whereM
is the number of color samples.
See Also
VkFramebufferMixedSamplesCombinationNV
,VkPipelineCoverageReductionStateCreateInfoNV
-
-
Method Detail
-
nvkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
public static int nvkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(VkPhysicalDevice physicalDevice, long pCombinationCount, long pCombinations)
Unsafe version of:GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
- Parameters:
pCombinationCount
- a pointer to an integer related to the number of combinations available or queried, as described below.
-
vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
public static int vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(VkPhysicalDevice physicalDevice, java.nio.IntBuffer pCombinationCount, @Nullable VkFramebufferMixedSamplesCombinationNV.Buffer pCombinations)
Query supported sample count combinations.C Specification
To query the set of mixed sample combinations of coverage reduction mode, rasterization samples and color, depth, stencil attachment sample counts that are supported by a physical device, call:
VkResult vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( VkPhysicalDevice physicalDevice, uint32_t* pCombinationCount, VkFramebufferMixedSamplesCombinationNV* pCombinations);
Description
If
pCombinations
isNULL
, then the number of supported combinations for the givenphysicalDevice
is returned inpCombinationCount
. Otherwise,pCombinationCount
must point to a variable set by the user to the number of elements in thepCombinations
array, and on return the variable is overwritten with the number of values actually written topCombinations
. If the value ofpCombinationCount
is less than the number of combinations supported for the givenphysicalDevice
, at mostpCombinationCount
values will be writtenpCombinations
andINCOMPLETE
will be returned instead ofSUCCESS
to indicate that not all the supported values were returned.Valid Usage (Implicit)
physicalDevice
must be a validVkPhysicalDevice
handlepCombinationCount
must be a valid pointer to auint32_t
value- If the value referenced by
pCombinationCount
is not 0, andpCombinations
is notNULL
,pCombinations
must be a valid pointer to an array ofpCombinationCount
VkFramebufferMixedSamplesCombinationNV
structures
Return Codes
- On success, this command returns
- On failure, this command returns
See Also
- Parameters:
physicalDevice
- the physical device from which to query the set of combinations.pCombinationCount
- a pointer to an integer related to the number of combinations available or queried, as described below.pCombinations
- eitherNULL
or a pointer to an array ofVkFramebufferMixedSamplesCombinationNV
values, indicating the supported combinations of coverage reduction mode, rasterization samples, and color, depth, stencil attachment sample counts.
-
vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
public static int vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(VkPhysicalDevice physicalDevice, int[] pCombinationCount, @Nullable VkFramebufferMixedSamplesCombinationNV.Buffer pCombinations)
Array version of:GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
-
-