Cache and Bandwidth Aware Real-time Subsurface Scattering
PhD. Dissertation (Advisor: Marc Olano).
Abstract: Photo-realistic subsurface scattering is a demanding feature in many real-time
applications, especially in next-generation games and virtual productions where the
uncanny valley needs to be addressed for real-time human skin rendering. Most
importantly, it must be addressed in milliseconds or less without visible quality
compromise. These quality and performance demands are prohibitively expensive
when using Monte Carlo sampling for subsurface scattering. Moreover, real-time
rendering is limited by hardware capability and GPU cache architectures. This
dissertation explores novel algorithms for high-quality photo-realistic real-time subsurface
scattering with cache incoherence and limited bandwidth.
To achieve this, a new generic taxonomy is proposed for heterogeneous realtime rendering to identify techniques that can improve bandwidth and cache utilization. A single pass, variance guided, and generic O(1) real-time adaptive sampling technique is proposed to minimize bandwidth demands and improve cache utilization. This adaptive sampling pass works with different global temporal accumulation techniques (e.g., Temporal Anti-Aliasing and Deep Learning Super Sampling) to further improve quality. We propose a new technique, adaptive filtered importance sampling (AFIS), based on our single pass adaptive sampling technique and filtered importance sampling. A hybrid AFIS and the separable approximation technique allows the user to balance quality and performance. To deal with instability during dynamic lighting, a novel use of Control Variates (CV) in the sample domain instead of shading domain is proposed.
Our algorithm induces as little as one texture overhead to a real-time rendering engine, and has been battle tested in the Unreal Engine, a commercial game engine.