Fast Divergent Ray Traversal by Batching Rays in a BVH
MetadataShow full item record
Ray tracing forms the basis of photorealistic rendering as seen in films and special effects. The process of rendering all the frames of animated films can take thousands of CPU years. Improving the efficiency of the rendering algorithm translates into large savings of time. In this thesis, we focus on the algorithm that is at the core of all rendering systems, computing the intersection point between a ray and a scene. Our contribution is a novel ray traversal scheme aimed at highly divergent ray distributions. We improve traversal efficiency by batching rays at fixed points in a BVH during traversal. The batched rays benefit from improved cache efficiency and utilization of instruction level parallelism and achieves performance improvements of up to 99\% for intersection queries and up to 123\% for occlusion queries for ray distributions seen after the first diffuse bounce when compared to a single-ray traversal scheme. Our scheme is orthogonal to recent advances in divergent ray traversal, and for large scenes, substantially improves on state of the art performance.