C Specification
The VkAccelerationStructureTrianglesOpacityMicromapKHR structure is
defined as:
// Provided by VK_KHR_opacity_micromap
typedef struct VkAccelerationStructureTrianglesOpacityMicromapKHR {
VkStructureType sType;
void* pNext;
VkIndexType indexType;
VkDeviceAddress indexBuffer;
VkDeviceSize indexStride;
uint32_t baseTriangle;
VkAccelerationStructureKHR micromap;
} VkAccelerationStructureTrianglesOpacityMicromapKHR;
Members
-
sTypeis a VkStructureType value identifying this structure. -
pNextisNULLor a pointer to a structure extending this structure. -
indexTypeis the type of triangle indices used when indexing this micromap -
indexBufferis the address containing the triangle indices -
indexStrideis the byte stride between triangle indices -
baseTriangleis the base value added to the non-negative triangle indices -
micromapis the handle to the micromap object to include in this geometry
Description
If VkAccelerationStructureTrianglesOpacityMicromapKHR is included in
the pNext chain of a
VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX or
VkAccelerationStructureGeometryTrianglesDataKHR structure, that
geometry will reference that micromap.
For each triangle in the geometry, the acceleration structure build fetches
an index from indexBuffer using indexType and indexStride
if present.
If indexType is VK_INDEX_TYPE_NONE_KHR, then the index used is
the index of the triangle in the geometry.
If that value is the unsigned cast of one of the values from VkOpacityMicromapSpecialIndexKHR then that triangle behaves as described for that special value in Ray Opacity Micromap.
Otherwise that triangle uses the opacity micromap information from
micromap at that index plus baseTriangle.
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.