public class NVShadingRateImage
extends java.lang.Object
In addition to the API support controlling rasterization, this extension also adds Vulkan support for the SPV_NV_shading_rate extension to SPIR-V. That extension provides two fragment shader variable decorations that allow fragment shaders to determine the shading rate used for processing the fragment:
FragmentSizeNV, which indicates the width and height of the set of pixels processed by the fragment shader.InvocationsPerPixel, which indicates the maximum number of fragment shader invocations that could be spawned for the pixel(s) covered by the fragment.When using SPIR-V in conjunction with the OpenGL Shading Language (GLSL), the fragment shader capabilities are provided by the GL_NV_shading_rate_image language extension and correspond to the built-in variables gl_FragmentSizeNV and gl_InvocationsPerPixelNV, respectively.
VK_NV_shading_rate_imageVK_KHR_get_physical_device_properties2| Modifier and Type | Field and Description |
|---|---|
static int |
VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV
Extends
VkAccessFlagBits. |
static int |
VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV
VkCoarseSampleOrderTypeNV - Shading rate image sample ordering types
|
static int |
VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV
VkCoarseSampleOrderTypeNV - Shading rate image sample ordering types
|
static int |
VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV
VkCoarseSampleOrderTypeNV - Shading rate image sample ordering types
|
static int |
VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV
VkCoarseSampleOrderTypeNV - Shading rate image sample ordering types
|
static int |
VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV
Extends
VkDynamicState. |
static int |
VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV
Extends
VkDynamicState. |
static int |
VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV
Extends
VkImageLayout. |
static int |
VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV
Extends
VkImageUsageFlagBits. |
static java.lang.String |
VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME
The extension name.
|
static int |
VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION
The extension specification version.
|
static int |
VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV
Extends
VkPipelineStageFlagBits. |
static int |
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV
VkShadingRatePaletteEntryNV - Shading rate image palette entry types
|
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV
Extends
VkStructureType. |
| Modifier and Type | Method and Description |
|---|---|
static void |
nvkCmdSetCoarseSampleOrderNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int sampleOrderType,
int customSampleOrderCount,
long pCustomSampleOrders)
Unsafe version of:
CmdSetCoarseSampleOrderNV |
static void |
nvkCmdSetViewportShadingRatePaletteNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int firstViewport,
int viewportCount,
long pShadingRatePalettes)
Unsafe version of:
CmdSetViewportShadingRatePaletteNV |
static void |
vkCmdBindShadingRateImageNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long imageView,
int imageLayout)
Bind a shading rate image on a command buffer.
|
static void |
vkCmdSetCoarseSampleOrderNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int sampleOrderType,
VkCoarseSampleOrderCustomNV.Buffer pCustomSampleOrders)
Set sample order for coarse fragments on a command buffer.
|
static void |
vkCmdSetViewportShadingRatePaletteNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int firstViewport,
VkShadingRatePaletteNV.Buffer pShadingRatePalettes)
Set shading rate image palettes on a command buffer.
|
public static final int VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION
public static final java.lang.String VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME
public static final int VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV
VkStructureType.
public static final int VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV
VkStructureType.
public static final int VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV
VkImageLayout.public static final int VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV
VkDynamicState.
public static final int VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV
VkDynamicState.
public static final int VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV
VkAccessFlagBits.public static final int VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV
VkImageUsageFlagBits.public static final int VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV
VkPipelineStageFlagBits.public static final int VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV
The following table indicates the width and height (in pixels) of each fragment generated using the indicated shading rate, as well as the maximum number of fragment shader invocations launched for each fragment. When processing regions of a primitive that have a shading rate of SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, no fragments will be generated in that region.
public static final int VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV
COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV specifies that coverage samples will be ordered in an implementation-dependent manner.COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV specifies that coverage samples will be ordered according to the array of custom orderings provided in either the pCustomSampleOrders member of VkPipelineViewportCoarseSampleOrderStateCreateInfoNV or the pCustomSampleOrders member of CmdSetCoarseSampleOrderNV.COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV specifies that coverage samples will be ordered sequentially, sorted first by pixel coordinate (in row-major order) and then by coverage sample number.COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV specifies that coverage samples will be ordered sequentially, sorted first by coverage sample number and then by pixel coordinate (in row-major order).VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, CmdSetCoarseSampleOrderNV
public static final int VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV
COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV specifies that coverage samples will be ordered in an implementation-dependent manner.COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV specifies that coverage samples will be ordered according to the array of custom orderings provided in either the pCustomSampleOrders member of VkPipelineViewportCoarseSampleOrderStateCreateInfoNV or the pCustomSampleOrders member of CmdSetCoarseSampleOrderNV.COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV specifies that coverage samples will be ordered sequentially, sorted first by pixel coordinate (in row-major order) and then by coverage sample number.COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV specifies that coverage samples will be ordered sequentially, sorted first by coverage sample number and then by pixel coordinate (in row-major order).VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, CmdSetCoarseSampleOrderNV
public static final int VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV
COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV specifies that coverage samples will be ordered in an implementation-dependent manner.COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV specifies that coverage samples will be ordered according to the array of custom orderings provided in either the pCustomSampleOrders member of VkPipelineViewportCoarseSampleOrderStateCreateInfoNV or the pCustomSampleOrders member of CmdSetCoarseSampleOrderNV.COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV specifies that coverage samples will be ordered sequentially, sorted first by pixel coordinate (in row-major order) and then by coverage sample number.COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV specifies that coverage samples will be ordered sequentially, sorted first by coverage sample number and then by pixel coordinate (in row-major order).VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, CmdSetCoarseSampleOrderNV
public static final int VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV
COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV specifies that coverage samples will be ordered in an implementation-dependent manner.COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV specifies that coverage samples will be ordered according to the array of custom orderings provided in either the pCustomSampleOrders member of VkPipelineViewportCoarseSampleOrderStateCreateInfoNV or the pCustomSampleOrders member of CmdSetCoarseSampleOrderNV.COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV specifies that coverage samples will be ordered sequentially, sorted first by pixel coordinate (in row-major order) and then by coverage sample number.COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV specifies that coverage samples will be ordered sequentially, sorted first by coverage sample number and then by pixel coordinate (in row-major order).VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, CmdSetCoarseSampleOrderNV
public static void vkCmdBindShadingRateImageNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long imageView,
int imageLayout)
When shading rate image usage is enabled in the bound pipeline, the pipeline uses a shading rate image specified by the command:
void vkCmdBindShadingRateImageNV(
VkCommandBuffer commandBuffer,
VkImageView imageView,
VkImageLayout imageLayout);
imageView is not NULL_HANDLE, it must be a valid VkImageView handle of type IMAGE_VIEW_TYPE_2D or IMAGE_VIEW_TYPE_2D_ARRAY.imageView is not NULL_HANDLE, it must have a format of FORMAT_R8_UINT.imageView is not NULL_HANDLE, it must have been created with a usage value including IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NVimageView is not NULL_HANDLE, imageLayout must match the actual VkImageLayout of each subresource accessible from imageView at the time the subresource is accessed.imageView is not NULL_HANDLE, imageLayout must be IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV or IMAGE_LAYOUT_GENERAL.commandBuffer must be a valid VkCommandBuffer handleimageView is not NULL_HANDLE, imageView must be a valid VkImageView handleimageLayout must be a valid VkImageLayout valuecommandBuffer must be in the recording stateVkCommandPool that commandBuffer was allocated from must support graphics operationscommandBuffer, and imageView that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevicecommandBuffer must be externally synchronizedVkCommandPool that commandBuffer was allocated from must be externally synchronized| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type |
|---|---|---|---|
| Primary Secondary | Both | Graphics |
commandBuffer - the command buffer into which the command will be recorded.imageView - an image view handle specifying the shading rate image. imageView may be set to NULL_HANDLE, which is equivalent to specifying a view of an image filled with zero values.imageLayout - the layout that the image subresources accessible from imageView will be in when the shading rate image is accessed.public static void nvkCmdSetViewportShadingRatePaletteNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int firstViewport,
int viewportCount,
long pShadingRatePalettes)
CmdSetViewportShadingRatePaletteNVviewportCount - the number of viewports whose shading rate palettes are updated by the command.public static void vkCmdSetViewportShadingRatePaletteNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int firstViewport,
VkShadingRatePaletteNV.Buffer pShadingRatePalettes)
If a pipeline state object is created with DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV enabled, the per-viewport shading rate image palettes are set by the command:
void vkCmdSetViewportShadingRatePaletteNV(
VkCommandBuffer commandBuffer,
uint32_t firstViewport,
uint32_t viewportCount,
const VkShadingRatePaletteNV* pShadingRatePalettes);
DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV dynamic state enabledfirstViewport must be less than VkPhysicalDeviceLimits::maxViewportsfirstViewport and viewportCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusivefirstViewport must be 0viewportCount must be 1commandBuffer must be a valid VkCommandBuffer handlepShadingRatePalettes must be a valid pointer to an array of viewportCount valid VkShadingRatePaletteNV structurescommandBuffer must be in the recording stateVkCommandPool that commandBuffer was allocated from must support graphics operationsviewportCount must be greater than 0commandBuffer must be externally synchronizedVkCommandPool that commandBuffer was allocated from must be externally synchronized| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type |
|---|---|---|---|
| Primary Secondary | Both | Graphics |
commandBuffer - the command buffer into which the command will be recorded.firstViewport - the index of the first viewport whose shading rate palette is updated by the command.pShadingRatePalettes - a pointer to an array of VkShadingRatePaletteNV structures defining the palette for each viewport.public static void nvkCmdSetCoarseSampleOrderNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int sampleOrderType,
int customSampleOrderCount,
long pCustomSampleOrders)
CmdSetCoarseSampleOrderNVcustomSampleOrderCount - specifies the number of custom sample orderings to use when ordering coverage samples.public static void vkCmdSetCoarseSampleOrderNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
int sampleOrderType,
@Nullable
VkCoarseSampleOrderCustomNV.Buffer pCustomSampleOrders)
If a pipeline state object is created with DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV enabled, the order of coverage samples in fragments larger than one pixel is set by the command:
void vkCmdSetCoarseSampleOrderNV(
VkCommandBuffer commandBuffer,
VkCoarseSampleOrderTypeNV sampleOrderType,
uint32_t customSampleOrderCount,
const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);
If sampleOrderType is COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV, the coverage sample order used for any combination of fragment area and coverage sample count not enumerated in pCustomSampleOrders will be identical to that used for COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV.
sampleOrderType is not COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV, customSamplerOrderCount must be 0pCustomSampleOrders must not contain two structures with matching values for both the shadingRate and sampleCount members.commandBuffer must be a valid VkCommandBuffer handlesampleOrderType must be a valid VkCoarseSampleOrderTypeNV valuecustomSampleOrderCount is not 0, pCustomSampleOrders must be a valid pointer to an array of customSampleOrderCount valid VkCoarseSampleOrderCustomNV structurescommandBuffer must be in the recording stateVkCommandPool that commandBuffer was allocated from must support graphics operationscommandBuffer must be externally synchronizedVkCommandPool that commandBuffer was allocated from must be externally synchronized| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type |
|---|---|---|---|
| Primary Secondary | Both | Graphics |
commandBuffer - the command buffer into which the command will be recorded.sampleOrderType - specifies the mechanism used to order coverage samples in fragments larger than one pixel.pCustomSampleOrders - a pointer to an array of VkCoarseSampleOrderCustomNV structures, each of which specifies the coverage sample order for a single combination of fragment area and coverage sample count.Copyright LWJGL. All Rights Reserved. License terms.