| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Extensions.VK_AMDX_dense_geometry_format
Description
Name
VK_AMDX_dense_geometry_format - device extension
VK_AMDX_dense_geometry_format
- Name String
VK_AMDX_dense_geometry_format
- Extension Type
- Device extension
- Registered Extension Number
- 479
- Revision
- 1
- Ratification Status
- Not ratified
- Extension and Version Dependencies
- VK_KHR_acceleration_structure and
- __This is a provisional extension and must be used with caution. See the description of provisional header files for enablement and stability details.__
- Contact
- Extension Proposal
- VK_AMDX_dense_geometry_format
Other Extension Metadata
- Last Modified Date
- 2025-07-10
- IP Status
- No known IP claims.
- Contributors
- Stu Smith, AMD
- Josh Barczak, AMD
- Carsten Benthin, AMD
- David McAllister, AMD
Description
This extension adds the ability to build ray tracing acceleration
structures from pre-compressed Dense Geometry Format geometry data.
New Structures
Extending
AccelerationStructureGeometryKHR:
New Enums
New Enum Constants
AMDX_DENSE_GEOMETRY_FORMAT_SPEC_VERSIONCOMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDXCOMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDXExtending
BufferUsageFlagBits2:Extending
GeometryTypeKHR:Extending
StructureType:
Issues
None.
Examples
None.
Version History
Revision 1, 2025-07-10 (Stu Smith)
- Initial revision.
See Also
No cross-references are available
Document Notes
For more information, see the Vulkan Specification.
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Synopsis
- data PhysicalDeviceDenseGeometryFormatFeaturesAMDX = PhysicalDeviceDenseGeometryFormatFeaturesAMDX {}
- data AccelerationStructureDenseGeometryFormatTrianglesDataAMDX (es :: [Type]) = AccelerationStructureDenseGeometryFormatTrianglesDataAMDX {}
- newtype CompressedTriangleFormatAMDX where
- type AMDX_DENSE_GEOMETRY_FORMAT_SPEC_VERSION = 1
- pattern AMDX_DENSE_GEOMETRY_FORMAT_SPEC_VERSION :: Integral a => a
- type AMDX_DENSE_GEOMETRY_FORMAT_EXTENSION_NAME = "VK_AMDX_dense_geometry_format"
- pattern AMDX_DENSE_GEOMETRY_FORMAT_EXTENSION_NAME :: (Eq a, IsString a) => a
- data DeviceOrHostAddressConstKHR
- newtype GeometryTypeKHR where
- GeometryTypeKHR Int32
- pattern GEOMETRY_TYPE_AABBS_KHR :: GeometryTypeKHR
- pattern GEOMETRY_TYPE_DENSE_GEOMETRY_FORMAT_TRIANGLES_AMDX :: GeometryTypeKHR
- pattern GEOMETRY_TYPE_INSTANCES_KHR :: GeometryTypeKHR
- pattern GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV :: GeometryTypeKHR
- pattern GEOMETRY_TYPE_SPHERES_NV :: GeometryTypeKHR
- pattern GEOMETRY_TYPE_TRIANGLES_KHR :: GeometryTypeKHR
- type COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDX = 128
- pattern COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDX :: Integral a => a
- type COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDX = 128
- pattern COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDX :: Integral a => a
Documentation
data PhysicalDeviceDenseGeometryFormatFeaturesAMDX Source #
VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX - Structure describing dense geometry format features that can be supported by an implementation
Members
This structure describes the following feature:
Description
If the PhysicalDeviceDenseGeometryFormatFeaturesAMDX structure is
included in the pNext chain of the
PhysicalDeviceFeatures2
structure passed to
getPhysicalDeviceFeatures2,
it is filled in to indicate whether each corresponding feature is
supported. If the application wishes to use a
Device with any features described by
PhysicalDeviceDenseGeometryFormatFeaturesAMDX, it must add an
instance of the structure, with the desired feature members set to
TRUE, to the pNext chain of
DeviceCreateInfo when creating the
Device.
Valid Usage (Implicit)
See Also
Constructors
| PhysicalDeviceDenseGeometryFormatFeaturesAMDX | |
Fields | |
Instances
data AccelerationStructureDenseGeometryFormatTrianglesDataAMDX (es :: [Type]) Source #
VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX - Structure specifying acceleration structure DGF compressed triangle data
Description
If format is COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX, numVertices
specifies the sum of vertex counts across all blocks.
Valid Usage
-
The buffer from which
compressedData.deviceAddressis queried must have been created with theBUFFER_USAGE_2_COMPRESSED_DATA_DGF1_BIT_AMDXusage flag set
- The ::denseGeometryFormat feature must be enabled
-
If
formatis VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX, thencompressedDatamust be aligned toCOMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDX(128) bytes -
If
formatis VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX, thendataSizemust be a multiple ofCOMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDX(128) bytes -
pNextmust beNULLor a pointer to a validAccelerationStructureTrianglesOpacityMicromapEXTstructure -
If
pNextis a pointer to a validAccelerationStructureTrianglesOpacityMicromapEXTstructure, the micromap feature must be enabled
Valid Usage (Implicit)
-
compressedDatamust be a validDeviceOrHostAddressConstKHRunion -
formatmust be a validCompressedTriangleFormatAMDXvalue
See Also
VK_AMDX_dense_geometry_format,
CompressedTriangleFormatAMDX,
DeviceOrHostAddressConstKHR,
DeviceSize,
StructureType
Constructors
| AccelerationStructureDenseGeometryFormatTrianglesDataAMDX | |
Fields
| |
Instances
newtype CompressedTriangleFormatAMDX Source #
VkCompressedTriangleFormatAMDX - Available compressed triangle formats
Description
COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDXspecifies that the compressed triangle data is in Dense Geometry Format, version 1, consisting of an array of 128B DGF blocks.
See Also
VK_AMDX_dense_geometry_format,
AccelerationStructureDenseGeometryFormatTrianglesDataAMDX
Constructors
| CompressedTriangleFormatAMDX Int32 |
Bundled Patterns
| pattern COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX :: CompressedTriangleFormatAMDX |
Instances
pattern AMDX_DENSE_GEOMETRY_FORMAT_SPEC_VERSION :: Integral a => a Source #
type AMDX_DENSE_GEOMETRY_FORMAT_EXTENSION_NAME = "VK_AMDX_dense_geometry_format" Source #
pattern AMDX_DENSE_GEOMETRY_FORMAT_EXTENSION_NAME :: (Eq a, IsString a) => a Source #
data DeviceOrHostAddressConstKHR Source #
Constructors
| DeviceAddressConst DeviceAddress | |
| HostAddressConst (Ptr ()) |
Instances
| Show DeviceOrHostAddressConstKHR Source # | |
Defined in Vulkan.Extensions.VK_KHR_acceleration_structure Methods showsPrec :: Int -> DeviceOrHostAddressConstKHR -> ShowS # show :: DeviceOrHostAddressConstKHR -> String # showList :: [DeviceOrHostAddressConstKHR] -> ShowS # | |
| ToCStruct DeviceOrHostAddressConstKHR Source # | |
Defined in Vulkan.Extensions.VK_KHR_acceleration_structure Methods withCStruct :: DeviceOrHostAddressConstKHR -> (Ptr DeviceOrHostAddressConstKHR -> IO b) -> IO b Source # pokeCStruct :: Ptr DeviceOrHostAddressConstKHR -> DeviceOrHostAddressConstKHR -> IO b -> IO b Source # withZeroCStruct :: (Ptr DeviceOrHostAddressConstKHR -> IO b) -> IO b Source # pokeZeroCStruct :: Ptr DeviceOrHostAddressConstKHR -> IO b -> IO b Source # cStructSize :: Int Source # | |
| Zero DeviceOrHostAddressConstKHR Source # | |
Defined in Vulkan.Extensions.VK_KHR_acceleration_structure Methods | |
newtype GeometryTypeKHR Source #
VkGeometryTypeKHR - Enum specifying which type of geometry is provided
Description
GEOMETRY_TYPE_TRIANGLES_KHRspecifies a geometry type consisting of triangles.
GEOMETRY_TYPE_AABBS_KHRspecifies a geometry type consisting of axis-aligned bounding boxes.GEOMETRY_TYPE_INSTANCES_KHRspecifies a geometry type consisting of acceleration structure instances.GEOMETRY_TYPE_DENSE_GEOMETRY_FORMAT_TRIANGLES_AMDXspecifies a geometry type consisting of triangles from compressed data.GEOMETRY_TYPE_SPHERES_NVspecifies a geometry type consisting of spheres.GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NVspecifies a geometry type consisting of linear swept spheres.
See Also
VK_KHR_acceleration_structure,
VK_NV_ray_tracing,
AccelerationStructureGeometryKHR,
GeometryNV
Constructors
| GeometryTypeKHR Int32 |
Bundled Patterns
| pattern GEOMETRY_TYPE_AABBS_KHR :: GeometryTypeKHR | |
| pattern GEOMETRY_TYPE_DENSE_GEOMETRY_FORMAT_TRIANGLES_AMDX :: GeometryTypeKHR | |
| pattern GEOMETRY_TYPE_INSTANCES_KHR :: GeometryTypeKHR | |
| pattern GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV :: GeometryTypeKHR | |
| pattern GEOMETRY_TYPE_SPHERES_NV :: GeometryTypeKHR | |
| pattern GEOMETRY_TYPE_TRIANGLES_KHR :: GeometryTypeKHR |
Instances
pattern COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDX :: Integral a => a Source #
VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDX - Alignment requirement for DGF1 compressed data
See Also
pattern COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDX :: Integral a => a Source #
VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDX - Alignment requirement for DGF1 compressed data