VkCoarseSampleOrderCustomNV(3)

Name

VkCoarseSampleOrderCustomNV - Structure specifying parameters controlling shading rate image usage

C Specification

The VkCoarseSampleOrderCustomNV structure is defined as:

// Provided by VK_NV_shading_rate_image
typedef struct VkCoarseSampleOrderCustomNV {
    VkShadingRatePaletteEntryNV        shadingRate;
    uint32_t                           sampleCount;
    uint32_t                           sampleLocationCount;
    const VkCoarseSampleLocationNV*    pSampleLocations;
} VkCoarseSampleOrderCustomNV;

Members

  • shadingRate is a shading rate palette entry that identifies the fragment width and height for the combination of fragment area and per-pixel coverage sample count to control.

  • sampleCount identifies the per-pixel coverage sample count for the combination of fragment area and coverage sample count to control.

  • sampleLocationCount specifies the number of sample locations in the custom ordering.

  • pSampleLocations is a pointer to an array of VkCoarseSampleLocationNV structures specifying the location of each sample in the custom ordering.

Description

The VkCoarseSampleOrderCustomNV structure is used with a coverage sample ordering type of VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV to specify the order of coverage samples for one combination of fragment width, fragment height, and coverage sample count.

When using a custom sample ordering, element j in pSampleLocations specifies a specific pixel location and sample index that corresponds to coverage index j in the multi-pixel fragment.

Valid Usage
  • VUID-VkCoarseSampleOrderCustomNV-shadingRate-02073
    shadingRate must be a shading rate that generates fragments with more than one pixel

  • VUID-VkCoarseSampleOrderCustomNV-sampleCount-02074
    sampleCount must correspond to a sample count enumerated in VkSampleCountFlags whose corresponding bit is set in VkPhysicalDeviceLimits::framebufferNoAttachmentsSampleCounts

  • VUID-VkCoarseSampleOrderCustomNV-sampleLocationCount-02075
    sampleLocationCount must be equal to the product of sampleCount, the fragment width for shadingRate, and the fragment height for shadingRate

  • VUID-VkCoarseSampleOrderCustomNV-sampleLocationCount-02076
    sampleLocationCount must be less than or equal to the value of VkPhysicalDeviceShadingRateImagePropertiesNV::shadingRateMaxCoarseSamples

  • VUID-VkCoarseSampleOrderCustomNV-pSampleLocations-02077
    The array pSampleLocations must contain exactly one entry for every combination of valid values for pixelX, pixelY, and sample in the structure VkCoarseSampleOrderCustomNV

Valid Usage (Implicit)
  • VUID-VkCoarseSampleOrderCustomNV-shadingRate-parameter
    shadingRate must be a valid VkShadingRatePaletteEntryNV value

  • VUID-VkCoarseSampleOrderCustomNV-pSampleLocations-parameter
    pSampleLocations must be a valid pointer to an array of sampleLocationCount VkCoarseSampleLocationNV structures

  • VUID-VkCoarseSampleOrderCustomNV-sampleLocationCount-arraylength
    sampleLocationCount must be greater than 0

Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.