AMD 提出四面体笼光线追踪方案,BVH 显存占用降至 1.7GB
AMD 在 GPUOpen 博客展示四面体笼光线追踪技术,用可变形四面体笼包裹密集几何体,使大型动态场景 BVH 显存占用从 80GB 降至约 1.7GB,更新耗时从超 300 毫秒降至约 3.3 毫秒。
AMD 近日通过 GPUOpen 博客对外展示了一项名为“四面体笼”(Tetrahedral Cages)的光线追踪技术。该方案针对大规模动态场景中 BVH(层次包围盒)显存占用与更新开销过高的问题,提出了一种新的加速结构组织思路。BVH 是光线追踪中用于加速射线与几何体求交的数据结构,其性能直接影响渲染效率。
在传统光线追踪方案中,每个独立动画对象都会产生独特的顶点位置,系统因此需要为每个对象存储并持续更新对应的加速结构。场景越密集,这部分开销增长越快。AMD 的演示场景包含约 2.5 万株独立动画植物,在最高 LOD 下约有 28 亿个三角形;经过 LOD 选择后,每帧仍有约 5 亿个动画植物三角形需要被光线追踪。
按照传统方法,该场景最高需要 80GB 显存,BVH 每帧更新耗时超过 300 毫秒。而采用四面体笼方案后,BVH 显存占用降至约 1.7GB,约为原来的 47 分之一;每帧全部 BVH 更新耗时降至约 3.3 毫秒,更新速度提升约 90 倍。在基于 Radeon RX 9070 XT 的测试平台上,该场景以 1080p 分辨率、60 FPS 以上运行,并使用主射线和阴影射线进行光线追踪。
四面体笼的核心思路是改变动画对象与加速结构的耦合方式:不再直接让密集网格参与动画,而是用更简单的可变形四面体笼将其包裹。密集几何体及其 BVH 保持静态、可复用,运行时仅笼体发生形变。射线在与密集三角形求交前,先经过笼体结构进行筛选。这一设计在保持光线追踪质量的同时,显著压缩了动态场景的显存占用与更新成本,为大规模动态场景的实时渲染提供了新的工程路径。