You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Vulkan/DX/Metal do provide a gpu-side build/update operations for TLAS & BLAS.
Ideally engine should support most, if not all of them, but there are complications from synchronization and metal.
TLAS
Require update, if any of BLAS was changed, or if new data provided via instance buffer.
Build flag: VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR
matrix format (vk, dx): matrix is a 3x4 row-major affine transformation matrix. (transposed)
matrix format (metal): matrix is a 4x3 column-major affine transformation matrix.
VkAccelerationStructureGeometryTrianglesDataKHR::transformData is a device or host address to memory containing an optional reference to a VkTransformMatrixKHR
Vulkan/DX/Metal do provide a gpu-side build/update operations for TLAS & BLAS.
Ideally engine should support most, if not all of them, but there are complications from synchronization and metal.
TLAS
Require update, if any of BLAS was changed, or if new data provided via instance buffer.
Build flag:
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR
matrix format (vk, dx): matrix is a 3x4 row-major affine transformation matrix. (transposed)
matrix format (metal): matrix is a 4x3 column-major affine transformation matrix.
struct definitions:
BLAS
VkAccelerationStructureGeometryTrianglesDataKHR::transformData
is a device or host address to memory containing an optional reference to aVkTransformMatrixKHR
MTLAccelerationStructureTriangleGeometryDescriptor::transformationMatrixBuffer
- unspecifyedAlso transposed matrix; described by pointers.
Update command requirements:
geometry.triangles.vertexFormat
geometry.triangles.maxVertex
geometry.triangles.indexType
!=nullptr
) ofgeometry.triangles.transformData
The text was updated successfully, but these errors were encountered: