Structures

VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX

Structure specifying acceleration structure DGF compressed triangle data

If a VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX structure is included in the pNext chain of a VkAccelerationStructureGeometryKHR structure whose geometryType member is VK_GEOMETRY_TYPE_DENSE_GEOMETRY_FORMAT_TRIANGLES_AMDX, then that structure defines triangle geometry using compressed data.

The VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX structure is defined as:

typedef struct VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX {
    VkStructureType sType;
    const void* pNext;
    VkDeviceOrHostAddressConstKHR compressedData;
    VkDeviceSize dataSize;
    uint32_t numTriangles;
    uint32_t numVertices;
    uint32_t maxPrimitiveIndex;
    uint32_t maxGeometryIndex;
    VkCompressedTriangleFormatAMDX format;
} VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX;
  • sType is a VkStructureType value identifying this structure.
  • pNext is NULL or a pointer to a structure extending this structure.
  • compressedData specifies the base address of the compressed data.
  • dataSize specifies the size of the compressed data.
  • numTriangles specifies the total number of triangles encoded in the compressed data.
  • numVertices specifies the number of vertices in the compressed data.
  • maxPrimitiveIndex specifies the maximum primitive index encoded in the compressed data.
  • maxGeometryIndex specifies the maximum geometry index encoded in the compressed data.
  • format specifies the VkCompressedTriangleFormatAMDX format of the compressed data.

If format is VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX, numVertices specifies the sum of vertex counts across all blocks.

Valid Usage

VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-compressedData-10885

The buffer from which compressedData.deviceAddress is queried must have been created with the VK_BUFFER_USAGE_2_COMPRESSED_DATA_DGF1_BIT_AMDX usage flag set

VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-format-10887

If format is VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX, then compressedData must be aligned to VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDX (128) bytes

VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-format-10888

If format is VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX, then dataSize must be a multiple of VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDX (128) bytes