# VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX(3) Manual Page

## Name

VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX - Structure specifying acceleration structure DGF compressed triangle data

Loading… please wait.

## C Specification

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:

    // Provided by VK_AMDX_dense_geometry_format
    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;

## Members

- `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.

## Description

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-denseGeometryFormat-10886
  The `VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX`::`denseGeometryFormat` feature must be enabled

- VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-format-10887
  If `format` is VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX, then `compressedData.address` must be aligned to 128 bytes

- VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-format-10888
  If `format` is VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX, then `dataSize` must be aligned to 128 bytes

- VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-pNext-10890
  `pNext` must be `NULL` or a pointer to a valid VkAccelerationStructureTrianglesOpacityMicromapEXT structure

- VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-pNext-10891
  If `pNext` is a pointer to a valid VkAccelerationStructureTrianglesOpacityMicromapEXT structure, the `micromap` feature must be enabled

Valid Usage (Implicit)

- VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DENSE_GEOMETRY_FORMAT_TRIANGLES_DATA_AMDX`

- VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-compressedData-parameter
  `compressedData` must be a valid VkDeviceOrHostAddressConstKHR union

- VUID-VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX-format-parameter
  `format` must be a valid VkCompressedTriangleFormatAMDX value

## See Also

VK_AMDX_dense_geometry_format, VkCompressedTriangleFormatAMDX, VkDeviceOrHostAddressConstKHR, VkDeviceSize, VkStructureType

## 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.

## Copyright

Copyright 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0