2024Foveated Rendering with Ray Tracing

Jacob Chesnut
Masters of Science Capstone Project, December 2024

[Proposal    Report     Presentation]

Virtual reality (VR) is a system which supports immersive observation and interaction of 3D virtual scenes. Ray tracing is a rendering method which is capable of producing high-quality images of 3D virtual scenes. Ray tracing in VR allows realistic lighting effects to be combined with immersive 3D. However, rendering to VR hardware using a ray tracing renderer is an expensive task which can be especially challenging to meet the performance requirements for real-time rendering. This is because of the high-resolution screens of most VR headsets and the high cost per-pixel computations of ray tracing.

Foveated rendering, using the user focusing position to inform the distribution of rendering resources across the screen, is a technique which can reduce the cost of rendering and allow the use of both VR and ray tracing. This method has its own challenges including the need for eye-tracking hardware, the need to balance quality drop-off and performance, and the need to adjust to each user. Modern VR systems have eye tracking capabilities, and as such are a good choice for supporting foveated rendering systems.

This project explores the use of adaptive resolution foveated rendering in order to provide real-time ray tracing for VR systems. To better address differences between users, my system supports the use of user calibration and postprocessing effects to overcome common quality issues resulting from foveated rendering. The final system is capable of real-time ray tracing of a moderately complex environment to a VR device. For the author, the final image is of high quality with virtually unnoticeable effects from foveated rendering. Future work includes improvements to handling of dynamic objects and fine tuning of runtime performance by balancing CPU and GPU processing.

Under supervision of Dr. Kelvin Sung. Division of Computing Software Systems at UW Bothell