msbvh: an efficient acceleration data structure for ray ......msbvh: an e cient acceleration data...
TRANSCRIPT
![Page 1: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/1.jpg)
MSBVH: An Efficient Acceleration DataStructure for Ray Traced Motion Blur
Leonhard Grunschloß Martin StichSehera Nawaz Alexander Keller
August 6, 2011
![Page 2: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/2.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 3: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/3.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 4: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/4.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 5: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/5.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 6: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/6.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 7: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/7.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 8: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/8.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 9: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/9.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 10: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/10.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 11: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/11.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 12: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/12.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 13: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/13.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 14: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/14.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 15: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/15.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 16: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/16.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 17: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/17.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 18: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/18.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 19: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/19.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 20: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/20.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 21: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/21.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 22: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/22.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 23: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/23.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 24: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/24.jpg)
Principles of Accelerated Ray Tracing
Hierarchical culling
I object list partitioning ⇒ BVH
I bounded memory, but overlapping bounding volumes
I spatial partitioning ⇒ kd-tree
I nodes do not overlap, but reference duplication
![Page 25: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/25.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 26: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/26.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 27: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/27.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 28: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/28.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 29: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/29.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 30: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/30.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 31: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/31.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 32: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/32.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 33: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/33.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 34: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/34.jpg)
SBVH
Best of both worlds
I object list partitioning whenever overlap is small
I spatial partitioning otherwise
I use spatial splits to build BVH with reference duplication
How to support motion blur?
![Page 35: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/35.jpg)
Multiple BVHs Sharing Identical Topology
Convex combination of bounding boxes yields conservative BVH
![Page 36: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/36.jpg)
Multiple BVHs Sharing Identical Topology
Convex combination of bounding boxes yields conservative BVH
![Page 37: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/37.jpg)
Multiple BVHs Sharing Identical Topology
Example: linear interpolation at leaf level
t=0.5
I acceptable memory overhead
I allows for very tight bounding boxes for every ray time t
![Page 38: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/38.jpg)
Multiple BVHs Sharing Identical Topology
Example: linear interpolation at leaf level
t=0.5
I acceptable memory overheadI allows for very tight bounding boxes for every ray time t
![Page 39: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/39.jpg)
Multiple BVHs Sharing Identical Topology
Example: linear interpolation at leaf level
t=0
t=1
t=0.5
I acceptable memory overheadI allows for very tight bounding boxes for every ray time t
![Page 40: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/40.jpg)
Multiple BVHs Sharing Identical Topology
Example: linear interpolation at leaf level
t=0
t=1
t=0.5
I acceptable memory overheadI allows for very tight bounding boxes for every ray time t
![Page 41: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/41.jpg)
Multiple BVHs Sharing Identical Topology
Example: linear interpolation at leaf level
t=0
t=1
t=0.5
I acceptable memory overheadI allows for very tight bounding boxes for every ray time t
![Page 42: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/42.jpg)
Multiple BVHs Sharing Identical Topology
Example: linear interpolation at leaf level
t=0.5
I acceptable memory overhead
I allows for very tight bounding boxes for every ray time t
![Page 43: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/43.jpg)
Multiple BVHs Sharing Identical Topology
Example: linear interpolation at leaf level
t=0.5
I acceptable memory overhead
I allows for very tight bounding boxes for every ray time t
![Page 44: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/44.jpg)
Multiple BVHs Sharing Identical Topology
Example: linear interpolation at leaf level
t=0.5
I acceptable memory overhead
I allows for very tight bounding boxes for every ray time t
![Page 45: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/45.jpg)
Interpolation and Spatial Splits
Can a kd-tree be interpolated?
I objects can move across split planesI thus node references change!
I hierarchy over convex hulls is inefficient
I splitting along time-axis requires lots of memory
![Page 46: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/46.jpg)
Interpolation and Spatial Splits
Can a kd-tree be interpolated?
I objects can move across split planesI thus node references change!
I hierarchy over convex hulls is inefficient
I splitting along time-axis requires lots of memory
![Page 47: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/47.jpg)
Interpolation and Spatial Splits
Can a kd-tree be interpolated?
I objects can move across split planesI thus node references change!
I hierarchy over convex hulls is inefficient
I splitting along time-axis requires lots of memory
![Page 48: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/48.jpg)
Interpolation and Spatial Splits
Can a kd-tree be interpolated?
I objects can move across split planesI thus node references change!
I hierarchy over convex hulls is inefficient
I splitting along time-axis requires lots of memory
![Page 49: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/49.jpg)
Our Contribution
Extend the SBVH to handle motion blur (MSBVH)
I by computing multiple bounding volumes per node
I using classic bounding volume interpolation traversal
I which includes spatial splits
I memory-efficient (MSBVH)
I reduced bounding volume overlap (MSBVH)
Note: we assume the hierarchy is rebuilt per frame
![Page 50: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/50.jpg)
Our Contribution
Extend the SBVH to handle motion blur (MSBVH)
I by computing multiple bounding volumes per node
I using classic bounding volume interpolation traversalI which includes spatial splits
I memory-efficient (MSBVH)
I reduced bounding volume overlap (MSBVH)
Note: we assume the hierarchy is rebuilt per frame
![Page 51: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/51.jpg)
Our Contribution
Extend the SBVH to handle motion blur (MSBVH)
I by computing multiple bounding volumes per node
I using classic bounding volume interpolation traversalI which includes spatial splits
I memory-efficient (MSBVH)
I reduced bounding volume overlap (MSBVH)
Note: we assume the hierarchy is rebuilt per frame
![Page 52: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/52.jpg)
Algorithm
t=0 t=1
1. Build the SBVH for t = 0.5 to determine topology
2. Compute partial primitives in leaf nodes
3. Compute corresponding bounds for t = 0 and t = 1
4. Propagate bounds to the parent nodes
5. Interpolate these bounds during traversal
![Page 53: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/53.jpg)
Algorithm
t=0 t=1t=0.5
1. Build the SBVH for t = 0.5 to determine topology
2. Compute partial primitives in leaf nodes
3. Compute corresponding bounds for t = 0 and t = 1
4. Propagate bounds to the parent nodes
5. Interpolate these bounds during traversal
![Page 54: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/54.jpg)
Algorithm
t=0 t=1t=0.5
1. Build the SBVH for t = 0.5 to determine topology
2. Compute partial primitives in leaf nodes
3. Compute corresponding bounds for t = 0 and t = 1
4. Propagate bounds to the parent nodes
5. Interpolate these bounds during traversal
![Page 55: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/55.jpg)
Algorithm
t=0 t=1t=0.5
1. Build the SBVH for t = 0.5 to determine topology
2. Compute partial primitives in leaf nodes
3. Compute corresponding bounds for t = 0 and t = 1
4. Propagate bounds to the parent nodes
5. Interpolate these bounds during traversal
![Page 56: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/56.jpg)
Algorithm
t=0 t=1t=0.5
1. Build the SBVH for t = 0.5 to determine topology
2. Compute partial primitives in leaf nodes
3. Compute corresponding bounds for t = 0 and t = 1
4. Propagate bounds to the parent nodes
5. Interpolate these bounds during traversal
![Page 57: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/57.jpg)
Algorithm
t=0 t=1t=0.5
1. Build the SBVH for t = 0.5 to determine topology
2. Compute partial primitives in leaf nodes
3. Compute corresponding bounds for t = 0 and t = 1
4. Propagate bounds to the parent nodes
5. Interpolate these bounds during traversal
![Page 58: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/58.jpg)
Algorithm
t=0 t=1
1. Build the SBVH for t = 0.5 to determine topology
2. Compute partial primitives in leaf nodes
3. Compute corresponding bounds for t = 0 and t = 1
4. Propagate bounds to the parent nodes
5. Interpolate these bounds during traversal
![Page 59: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/59.jpg)
Algorithm
t=0 t=1
1. Build the SBVH for t = 0.5 to determine topology
2. Compute partial primitives in leaf nodes
3. Compute corresponding bounds for t = 0 and t = 1
4. Propagate bounds to the parent nodes
5. Interpolate these bounds during traversal
![Page 60: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/60.jpg)
Triangles and AABB-Hierarchies under Linear Motion
t=0 t=1t=0.5
1. Use Sutherland-Hodgman to clip against leaf AABB
2. Results in barycentric coordinates of polygon vertices
3. Compute transformed polygon for t = 0 and t = 1
4. Bound the transformed polygon
5. No extra storage necessary
![Page 61: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/61.jpg)
Triangles and AABB-Hierarchies under Linear Motion
t=0 t=1t=0.5
1. Use Sutherland-Hodgman to clip against leaf AABB
2. Results in barycentric coordinates of polygon vertices
3. Compute transformed polygon for t = 0 and t = 1
4. Bound the transformed polygon
5. No extra storage necessary
![Page 62: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/62.jpg)
Triangles and AABB-Hierarchies under Linear Motion
t=0 t=1t=0.5
1. Use Sutherland-Hodgman to clip against leaf AABB
2. Results in barycentric coordinates of polygon vertices
3. Compute transformed polygon for t = 0 and t = 1
4. Bound the transformed polygon
5. No extra storage necessary
![Page 63: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/63.jpg)
Triangles and AABB-Hierarchies under Linear Motion
t=0 t=1t=0.5
1. Use Sutherland-Hodgman to clip against leaf AABB
2. Results in barycentric coordinates of polygon vertices
3. Compute transformed polygon for t = 0 and t = 1
4. Bound the transformed polygon
5. No extra storage necessary
![Page 64: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/64.jpg)
Clipping Displaced Subdivision Surfaces
1. Subdivide along surface parametrization
2. Bound individual elements, e.g. using interval arithmetic
3. Clip resulting bounding boxes
4. The union conservatively bounds the clipped primitive
![Page 65: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/65.jpg)
Clipping Displaced Subdivision Surfaces
1. Subdivide along surface parametrization
2. Bound individual elements, e.g. using interval arithmetic
3. Clip resulting bounding boxes
4. The union conservatively bounds the clipped primitive
![Page 66: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/66.jpg)
Clipping Displaced Subdivision Surfaces
1. Subdivide along surface parametrization
2. Bound individual elements, e.g. using interval arithmetic
3. Clip resulting bounding boxes
4. The union conservatively bounds the clipped primitive
![Page 67: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/67.jpg)
Extensions
I two-level hierarchy: animated instances
I interpolate transformation matrix elements to force linearmotion
I multiple motion segments
I restricted to powers of two for propagation up the hierarchy
I higher-order interpolation
I refitting over multiple frames
![Page 68: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/68.jpg)
Extensions
I two-level hierarchy: animated instances
I interpolate transformation matrix elements to force linearmotion
A(t)
I multiple motion segments
I restricted to powers of two for propagation up the hierarchy
I higher-order interpolation
I refitting over multiple frames
![Page 69: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/69.jpg)
Extensions
I two-level hierarchy: animated instances
I interpolate transformation matrix elements to force linearmotion
A(0)
A(1/3)
A(1)
A(2/3)
I multiple motion segments
I restricted to powers of two for propagation up the hierarchy
I higher-order interpolation
I refitting over multiple frames
![Page 70: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/70.jpg)
Extensions
I two-level hierarchy: animated instances
I interpolate transformation matrix elements to force linearmotion
I multiple motion segments
I restricted to powers of two for propagation up the hierarchy
I higher-order interpolation
I refitting over multiple frames
![Page 71: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/71.jpg)
Extensions
I two-level hierarchy: animated instances
I interpolate transformation matrix elements to force linearmotion
I multiple motion segmentsI restricted to powers of two for propagation up the hierarchy
2 4 2 8
4 88
I higher-order interpolation
I refitting over multiple frames
![Page 72: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/72.jpg)
Extensions
I two-level hierarchy: animated instances
I interpolate transformation matrix elements to force linearmotion
I multiple motion segmentsI restricted to powers of two for propagation up the hierarchy
3 5 2 7
15 14210
I higher-order interpolation
I refitting over multiple frames
![Page 73: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/73.jpg)
Extensions
I two-level hierarchy: animated instances
I interpolate transformation matrix elements to force linearmotion
I multiple motion segmentsI restricted to powers of two for propagation up the hierarchy
I higher-order interpolation
I refitting over multiple frames
![Page 74: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/74.jpg)
Extensions
I two-level hierarchy: animated instances
I interpolate transformation matrix elements to force linearmotion
I multiple motion segmentsI restricted to powers of two for propagation up the hierarchy
I higher-order interpolation
I refitting over multiple frames
![Page 75: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/75.jpg)
Results
BVH traversal with linear interpolation
I reduced SAH cost
I significantly less intersection tests
⇒ Video
I often less traversal steps
I about 20% rendering speed-up for many scenes
![Page 76: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/76.jpg)
Results
BVH traversal with linear interpolation
I reduced SAH cost
I significantly less intersection tests
I often less traversal steps
I about 20% rendering speed-up for many scenes
![Page 77: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/77.jpg)
Summary
In practice, works well for single frames
I helps well whenever SBVH helps
I increased build times (between BVH and kd-tree)
I prototype implemention in OptiX
I spatial splits only avoid overlap for t = 0.5I topology determined for t = 0.5
I problematic for incoherent motion
![Page 78: MSBVH: An Efficient Acceleration Data Structure for Ray ......MSBVH: An E cient Acceleration Data Structure for Ray Traced Motion Blur Leonhard Grunschloˇ Martin Stich Sehera Nawaz](https://reader035.vdocument.in/reader035/viewer/2022071401/60ed59bf6c166c466d54609c/html5/thumbnails/78.jpg)
Summary
In practice, works well for single frames
I helps well whenever SBVH helps
I increased build times (between BVH and kd-tree)
I prototype implemention in OptiX
I spatial splits only avoid overlap for t = 0.5I topology determined for t = 0.5
I problematic for incoherent motion