vkGetClusterAccelerationStructureBuildSizesNV
These cluster acceleration structures can be built or moved by a single versatile multi-indirect function vkCmdBuildClusterAccelerationStructureIndirectNV. To determine the memory requirements for executing this function, call:
void vkGetClusterAccelerationStructureBuildSizesNV(
VkDevice device,
const VkClusterAccelerationStructureInputInfoNV* pInfo,
VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo);
deviceis the logical device that owns the acceleration structure.pInfois a pointer to a VkClusterAccelerationStructureInputInfoNV structure containing parameters required for the memory requirements query.pSizeInfois a pointer to a VkAccelerationStructureBuildSizesInfoKHR structure which returns the size required for an acceleration structure and scratch buffer, given the build parameters.
If VkClusterAccelerationStructureInputInfoNV::opMode is
VK_CLUSTER_ACCELERATION_STRUCTURE_OP_MODE_IMPLICIT_DESTINATIONS_NV,
acceleration structure and scratch memory sizes are returned for all
VkClusterAccelerationStructureInputInfoNV::maxAccelerationStructureCount
acceleration structures.
If VkClusterAccelerationStructureInputInfoNV::opMode is
VK_CLUSTER_ACCELERATION_STRUCTURE_OP_MODE_EXPLICIT_DESTINATIONS_NV,
scratch memory size for all
VkClusterAccelerationStructureInputInfoNV::maxAccelerationStructureCount
acceleration structures and the acceleration structure memory size for a
single acceleration structure is returned.
If VkClusterAccelerationStructureInputInfoNV::opMode is
VK_CLUSTER_ACCELERATION_STRUCTURE_OP_MODE_COMPUTE_SIZES_NV, only
scratch memory size is returned for the requested acceleration structures.
Valid Usage
Valid Usage (Implicit)
VUID-vkGetClusterAccelerationStructureBuildSizesNV-device-parameter
device must be a valid VkDevice handle
VUID-vkGetClusterAccelerationStructureBuildSizesNV-pInfo-parameter
pInfo must be a valid pointer to a valid VkClusterAccelerationStructureInputInfoNV structure
VUID-vkGetClusterAccelerationStructureBuildSizesNV-pSizeInfo-parameter
pSizeInfo must be a valid pointer to a VkAccelerationStructureBuildSizesInfoKHR structure