VkBuildPartitionedAccelerationStructureInfoNV
The VkBuildPartitionedAccelerationStructureInfoNV structure is defined as:
typedef struct VkBuildPartitionedAccelerationStructureInfoNV {
VkStructureType sType;
void* pNext;
VkPartitionedAccelerationStructureInstancesInputNV input;
VkDeviceAddress srcAccelerationStructureData;
VkDeviceAddress dstAccelerationStructureData;
VkDeviceAddress scratchData;
VkDeviceAddress srcInfos;
VkDeviceAddress srcInfosCount;
} VkBuildPartitionedAccelerationStructureInfoNV;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.inputis a VkPartitionedAccelerationStructureInstancesInputNV structure describing the instance and partition count information in the PTLAS.srcAccelerationStructureDataisNULLor an address of a previously built PTLAS. If non-NULL, the PTLAS stored at this address is used as a basis to create new PTLAS.dstAccelerationStructureDatais the address to store the built PTLAS.scratchDatais the device address of scratch memory that will be used during PTLAS build.srcInfosis the device address of an array of VkBuildPartitionedAccelerationStructureIndirectCommandNV structures describing the type of operation to perform.srcInfosCountis a device address containing the size ofsrcInfosarray.
Members srcAccelerationStructureData and
dstAccelerationStructureData may be the same or different.
If they are the same, the update happens in-place.
Otherwise, the destination acceleration structure is updated and the source
is not modified.
Valid Usage
VUID-VkBuildPartitionedAccelerationStructureInfoNV-scratchData-10558
scratchData must not be NULL
VUID-VkBuildPartitionedAccelerationStructureInfoNV-scratchData-10559
Memory at scratchData must be equal or larger than the
VkAccelerationStructureBuildSizesInfoKHR::buildScratchSize
value returned from
vkGetPartitionedAccelerationStructuresBuildSizesNV with the same
build parameters
VUID-VkBuildPartitionedAccelerationStructureInfoNV-srcAccelerationStructureData-10560
If srcAccelerationStructureData is not NULL, it must have
previously been built as a PTLAS
VUID-VkBuildPartitionedAccelerationStructureInfoNV-dstAccelerationStructureData-10561
dstAccelerationStructureData must not be NULL
VUID-VkBuildPartitionedAccelerationStructureInfoNV-dstAccelerationStructureData-10562
Memory at dstAccelerationStructureData must be equal or larger
than the
VkAccelerationStructureBuildSizesInfoKHR::accelerationStructureSize
value returned from
vkGetPartitionedAccelerationStructuresBuildSizesNV with the same
build parameters
VUID-VkBuildPartitionedAccelerationStructureInfoNV-srcInfosCount-10563
srcInfosCount must be 4-byte aligned
VUID-VkBuildPartitionedAccelerationStructureInfoNV-srcInfos-10564
Each element of srcInfos array must have a unique
VkBuildPartitionedAccelerationStructureIndirectCommandNV::opType
Valid Usage (Implicit)
VUID-VkBuildPartitionedAccelerationStructureInfoNV-sType-sType
sType must be VK_STRUCTURE_TYPE_BUILD_PARTITIONED_ACCELERATION_STRUCTURE_INFO_NV
VUID-VkBuildPartitionedAccelerationStructureInfoNV-pNext-pNext
pNext must be NULL
VUID-VkBuildPartitionedAccelerationStructureInfoNV-input-parameter
input must be a valid VkPartitionedAccelerationStructureInstancesInputNV structure