Point-based Global Illumination (of PBGI) is a popular rendering technique for diffuse global illumination that is extensively used in production for its speed and noise-free behavior. Our work on this topics strt from the seminal report Point-Based Global Illumination for Movie Production, by Per H Christensen, in the "Global Illuminatino Accross Industry" SIGGRAPH 2010 Course. In the following, we recall the basic principle of this rendering method before refering to our related research work.
PBGI starts by distributing a dense point set on the scene's geometry before shading them according to the scene's primary light emitters, taking into account direct visibility only. This point sampling can be performed, for instance, using Poisson Disk distributions or surface tessellation. Starting from this shaded point set, a spatial tree is constructed bottom-up by computing at each node a spherical function capturing the diffuse directional radiance of its related subtree. Octrees and Bounding Sphere Hierarchies (BSH) have been successfully used as such PBGI tree structures, while Spherical Harmonics (SH) are often used as the nodes' spherical radiance functions. In the second part of the algorithm, a local framebuffer, also called microbuffer, is initialized for any receiver, which typically correspond to the unprojected 3D locations of the image pixels and may either be implemented as Lambert-warped 2D buffers or clamped cube map buffers. Finally, the shaded point set is rasterized adaptively against the receiver microbuffers, solving for visibility using variants of the z-buffer algorithm for each receiver independently, and the resulting filled microbuffers are convolved with the BRDF at receiver location to produce the final (e. g., pixel) color. Such a process can be iterated several times to simulate multiple diffuse bounces, but is usually bounded to one bounce to capture the most critical indirect lighting effects (e.g., color bleeding, directional/ambient occlusion).
In our research work, we have developed and pushed forward PBGI in a number of directions. In particular, the following list of articles covers many aspects of performance and quality evolutions we have been researching over the recent years.
ManyLoDs: Parallel Many-View Level-of-Detail Selection for Real-Time Global Illumination
by Matthias Holländer, Tobias Ritschel, Elmar Eisemann and Tamy Boubekeur
Computer Graphics Forum journal (Proc. EGSR 2011).
With ManyLoDs, we bring PBGI (among other many-ligths/many-views rendering techniques) to real time performances by de-structuring the progressive cut search/refinement and making it adapted to fine-grained parallel computing (e.g., GPU support).
Go to the project page.
Quantized Point-Based Global Illumination
by Bert Buchholz and Tamy Boubekeur
Computer Graphics Forum journal (Proc. EGSR 2012).
With Quantized PBGI (or QPBGI), we address the problem of memory cost and propose an in-core compression scheme that drastically diminishes the size of the PBGI tree. To do so, we design a high dimensional clustering method to learn a radiance function look-up table that quantizes the cached radiance.
Go to the project page.
Factorized Point-Based Global Illumination
Beibei Wang, Jing Huang, bert Buchholz, Xiangxu Meng and Tamy Boubekeur
Computer Graphics Forum journal (Proc. EGSR 2013).
With Factorized PBGI (or FPBGI), we improve significantly computation time by factorizing both the basic tree cut search and the splatting mechanism among clusters of similar nearby receivers, reaching up to one order of magnitude speedup for a similar visual quality.
Go to the project page.
Wavelet Point-Based Global Illumination
by Beibei Wang, Xiangxu Meng and Tamy Boubekeur
Computer Graphics Forum journal (Proc. EGSR 2015).
With Wavelet PBGI (or WPBIG), we show that non-diffuse effects, such as caustics, can be reproduced with an enriched PBGI framework that use wavelets to model radiance and adaptive microbuffers to efficiently capture such effects. As a result, our solution reproduce non-diffuse effects indistinguishable from bidirectional path tracing for only a fraction of the simulation time.
Go to the project page.
Forward Light Cuts: A Scalable Approach to Real-Time Global Illuminations
by Gilles Laurent, Cyril Delalandre, Grégoire De La Riviere and Tamy Boubekeur
Computer Graphics Forum journal (Proc. EGSR 2016).
Alternatively to PBGI, Instant Radiosity provides an efficient many-lights approximation of global illumination, that shares light cut/tree cut search challenges with PBGI, and can cope with real time constraints. With Forward Light Cuts (or FLC), we propose a real time global illumination algorithm that does not require any explicit tree structure and exploits the geometry stages of the modern graphics pipeline to generate a multiscale set of virtual point lights, to lit complex CAD-like scene in real time, with no precomputation.
Go to the project page.
High Dynamic Range Point Clouds for Real-Time Relighting
by Manuele Sabbadin, Gianpaolo Palma, Francesco Banterle, Tamy Boubekeur, Paolo Cignoni
Computer Graphics Forum journal (Proc. Pacific Graphics 2019).
Here, we propose to revisit image-based lighting, by injecting a full colored 3D point cloud of the environment to relight, in real time, a 3D object. To do so, we introduce the concept of HDR Point Clouds together with an inverse tone mapping operator to boost the dynamic an LDR point cloud based on a single HDR image. We also develop a new mipmapped point-based global illumination algorithm, tuned our realighting scenarios, such as augmented reality and VFX lookdev.
Go to the project page.
PBGI relates in many aspects to LigthCuts, in particular regarding the light cache hierarchy used in both algorithms. Similarly, numerous many-lights techniques substitute a complex light transport problem with a large collection of virtual emitters that approximate the full solution. A recent survey by Dachsbacher et al. gives a complete overview of these methods. Finally, a large part of the mesh-less design choices which form the root of PBGI are directly inspired from point-based rendering/graphics.
Coming soon