Abstract

We present a new method for real-time rendering of multiple recursions of reflections and refractions. The method uses the strengths of real-time ray tracing for objects close to the camera, by storing them in a per frame constructed BVH. For objects further from the camera, rasterization is used to create G-Buffers which store an image based representation of the scene outside the near objects. Rays that exit the BVH continue tracing in the G-Buffers' perspective space using ray marching, and can even be reflected back into the BVH. Our hybrid renderer is to our knowledge the first method to merge real-time ray tracing techniques with image based rendering to achieve smooth transitions from accurately ray traced foreground objects to image based representations in the background. We are able to achieve more complex reflections and refractions than existing screen space techniques, and offer reflections by off screen objects. Our results demonstrate that our algorithm is capable of rendering multiple bounce reflections and refractions, for scenes with millions of triangles, at 720p resolution and above 30 FPS.


Paper

Real-Time Multiply Recursive Reflections and Refractions using Hybrid Rendering
(official version at The Visual Computer Journal.)
Real-Time Multiply Recursive Reflections and Refractions using Hybrid Rendering
(author generated version.)

Videos

All videos are captured in real-time using Fraps video capturing tool. All videos but the last are rendered at 720p resolution. The last one is rendered at a 1920x1280 resolution.


The chess scene rendered with our method.
The chess scene rendered using a full BVH.
Chess scene: visualization of which geometry is represented
in our cube map (Red) and in the BVH (Blue).
The Sponza-Buddha-Bunny scene rendered with our method.
The Sponza-Buddha-Bunny scene rendered using a full BVH.
Sponza-Buddha-Bunny: visualization of which geometry is
represented in our cube map (Red) and in the BVH (Blue).
Sponza-Buddha-Bunny rendered with our method in a 1920x1280 resolution.