Class VkCoarseSampleOrderCustomNV

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

    public class VkCoarseSampleOrderCustomNV
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    Structure specifying parameters controlling shading rate image usage.
    Description

    The VkCoarseSampleOrderCustomNV structure is used with a coverage sample ordering type of 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
    • shadingRate must be a shading rate that generates fragments with more than one pixel
    • sampleCount must correspond to a sample count enumerated in VkSampleCountFlags whose corresponding bit is set in VkPhysicalDeviceLimits::framebufferNoAttachmentsSampleCounts
    • sampleLocationCount must be equal to the product of sampleCount, the fragment width for shadingRate, and the fragment height for shadingRate
    • sampleLocationCount must be less than or equal to the value of VkPhysicalDeviceShadingRateImagePropertiesNV::shadingRateMaxCoarseSamples
    • 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)
    • shadingRate must be a valid VkShadingRatePaletteEntryNV value
    • pSampleLocations must be a valid pointer to an array of sampleLocationCount VkCoarseSampleLocationNV structures
    • sampleLocationCount must be greater than 0
    See Also

    VkCoarseSampleLocationNV, VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, CmdSetCoarseSampleOrderNV

    Layout

    
     struct VkCoarseSampleOrderCustomNV {
         VkShadingRatePaletteEntryNV shadingRate();
         uint32_t sampleCount();
         uint32_t sampleLocationCount();
         VkCoarseSampleLocationNV const * pSampleLocations();
     }