VkMicromapUsageEXT
The VkMicromapUsageEXT
structure is defined as:
typedef struct VkMicromapUsageEXT {
uint32_t count;
uint32_t subdivisionLevel;
uint32_t format;
} VkMicromapUsageEXT;
count
is the number of triangles in the usage format defined by thesubdivisionLevel
andformat
below in the micromapsubdivisionLevel
is the subdivision level of this usage formatformat
is the format of this usage format
Valid Usage
VUID-VkMicromapUsageEXT-format-07519
If the VkMicromapTypeEXT of the micromap is
VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT
then format
must be
VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT
or
VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT
VUID-VkMicromapUsageEXT-format-07520
If the VkMicromapTypeEXT of the micromap is
VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT
and format
is
VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT
then subdivisionLevel
must be less than or equal to
VkPhysicalDeviceOpacityMicromapPropertiesEXT::maxOpacity2StateSubdivisionLevel
VUID-VkMicromapUsageEXT-format-07521
If the VkMicromapTypeEXT of the micromap is
VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT
and format
is
VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT
then subdivisionLevel
must be less than or equal to
VkPhysicalDeviceOpacityMicromapPropertiesEXT::maxOpacity4StateSubdivisionLevel
VUID-VkMicromapUsageEXT-format-08706
If the VkMicromapTypeEXT of the micromap is
VK_MICROMAP_TYPE_DISPLACEMENT_MICROMAP_NV
then format
must
be VK_DISPLACEMENT_MICROMAP_FORMAT_64_TRIANGLES_64_BYTES_NV
,
VK_DISPLACEMENT_MICROMAP_FORMAT_256_TRIANGLES_128_BYTES_NV
or
VK_DISPLACEMENT_MICROMAP_FORMAT_1024_TRIANGLES_128_BYTES_NV
VUID-VkMicromapUsageEXT-subdivisionLevel-08707
If the VkMicromapTypeEXT of the micromap is
VK_MICROMAP_TYPE_DISPLACEMENT_MICROMAP_NV
then
subdivisionLevel
must be less than or equal to
VkPhysicalDeviceDisplacementMicromapPropertiesNV::maxDisplacementMicromapSubdivisionLevel
The format
is interpreted based on the type
of the micromap
using it.