A Real-Time Beam Tracer with Application to Exact Soft Shadows
Efﬁciently calculating accurate soft shadows cast by area light sources remains a difﬁcult problem. Ray tracing based approaches are subject to noise or banding, and most other accurate methods either scale poorly with scene geometry or place restrictions on geometry and/or light source size and shape. Beam tracing is one solu- tion which has historically been considered too slow and complicated for most practical rendering applications. Beam tracing’s performance has been hindered by complex geometry intersection tests, and a lack of good accel- eration structures with efﬁcient algorithms to traverse them. We introduce fast new algorithms for beam tracing, speciﬁcally for beam–triangle intersection and beam–kd-tree traversal. The result is a beam tracer capable of calculating precise primary visibility and point light shadows in real-time. Moreover, beam tracing provides full area elements instead of point samples, which allows us to maintain coherence through to secondary effects and utilize the GPU for high quality antialiasing and shading with minimal extra cost. More importantly, our analysis shows that beam tracing is particularly well suited to soft shadows from area lights, and we generate essentially exact noise-free soft shadows for complex scenes in seconds rather than minutes or hours.
Ryan Overbeck, Ravi Ramamoorthi, and William R. Mark. "A Real-Time Beam Tracer with Application to Exact Soft Shadows". In EuroGraphics Symposium on Rendering, June 2007.