Paper Presentation - An Efficient GPU-based Approach for Interactive Global Illumination- Rui Wang, Rui Wang, Kun Zhou, Minghao Pan, Hujun Bao Presenter : Jong Hyeob Lee
2 Overview ● Previous work ● Main Algorithm ● GPU-based KD-Tree ● Selecting Irradiance Sample Points ● Reducing the Cost of Final Gather ● Results ● Conclusion
3 Overview ● Previous work ● Main Algorithm ● GPU-based KD-Tree ● Selecting Irradiance Sample Points ● Reducing the Cost of Final Gather ● Results ● Conclusion
4 Previous work ● CPU-based global illumination ● Instant radiosity [Keller 1997] ● Photon mapping [Jensen 2001] ● Interactive global illumination using fast ray tracing [Wald et al. 2002] ● LightCuts [Walter et al. 2005] Radiosity Photon mapping
5 Previous work ● GPU-based global illumination ● Reflective shadow maps [Dachsbacher and Stamminger 2005] ● Radiance Cache Splatting [Gautron et al. 2005] ● Matrix row-column sampling [Hasan et al. 2007] ● Imperfect shadow maps [Ritschel et al. 2008] ● GPU KD-Tree construction [Zhou et al. 2008]
6 Overview ● Previous work ● Main Algorithm ● GPU-based KD-Tree ● Selecting Irradiance Sample Points ● Reducing the Cost of Final Gather ● Results ● Conclusion
7 System Overview
8 Overview ● Previous work ● Main Algorithm ● GPU-based KD-Tree ● Selecting Irradiance Sample Points ● Reducing the Cost of Final Gather ● Results ● Conclusion
9 GPU-based KD-Tree ● Use method in “Real-time kd-tree construction on graphics hardware” [Zhou et al. 2008] ● To build kd-trees in real-time using NVIDIA’s CUDA Direct Lighting 1) Build a kd-tree of the scene, and trace eye rays in parallel 2) Collect rays that hit non-specular surfaces using a parallel list compaction [Harris et al. 2007] 3) Collect rays that hit specular surfaces, and spawn reflected and refracted rays for them 4) Repeat steps 2 and 3 for additional bounces 5) For all non-specular hit points, perform shadow tests and compute direct shading in parallel
10 Overview ● Previous work ● Main Algorithm ● GPU-based KD-Tree ● Selecting Irradiance Sample Points ● Reducing the Cost of Final Gather ● Results ● Conclusion
11 A parallel view space sampling strategy ● The goal of view space sampling: ● Select sample points that best approximate the actual (ir)radiance changes in view space.
12 A parallel view space sampling strategy ● Irradiance caching [Ward et al. 1998] ● Progressively inserting sample points into an existing set. ● Decision to insert more samples is based on the local variations of irradiance samples.
13 A parallel view space sampling strategy ● Clustering optimization
14 A parallel view space sampling strategy ● Clustering optimization ● Error metric :
15 A parallel view space sampling strategy ● Temporal coherence ● Fix cluster centers computed from the previous frame. ● Classify shading points to these clusters. ● Collect points with large errors. ● Create new cluster for these unclassified shading points and remove null clusters.
16 Result
17 Overview ● Previous work ● Main Algorithm ● GPU-based KD-Tree ● Selecting Irradiance Sample Points ● Reducing the Cost of Final Gather ● Results ● Conclusion
18 A cut approximation on photon map ● Computing an illumination cut from the photon tree. ● Typical approach: density estimation for each photon → too costly ● Estimate an illumination cut from the photon map directly, without density estimation at each photon.
19 A cut approximation on photon map
20 A cut approximation on photon map ● Select node which E p is larger than E min
21 A cut approximation on photon map ● Refinement with threshold
22 Result
23 Overview ● Previous work ● Main Algorithm ● GPU-based KD-Tree ● Selecting Irradiance Sample Points ● Reducing the Cost of Final Gather ● Results ● Conclusion
24 Results ● Implemented on BGSP [Hou et al. 2008] ● A general purpose C programming interface suitable for many core architecture such as the GPU ● Point or spot cone lights ● 3 bounces (2 photon bounces and final gather) ● 250 ~ 500 final gather rays
25 Results Ours Reference 8 times error Image
26 Results
27 Overview ● Previous work ● Main Algorithm ● GPU-based KD-Tree ● Selecting Irradiance Sample Points ● Reducing the Cost of Final Gather ● Results ● Conclusion
28 Conclusion ● An efficient GPU-based method for interactive global illumination is presented. ● Sparse view space (ir)radiance sampling ● A cut approximation of the photon map ● A GPU approach of interactive global illumination ● Limitations ● Only glossy materials for final gather ● Missing small geometric details ● With some temporal flickering artifacts
29 Q&A ● Thank you.