Team siames

Overall Objectives
Scientific Foundations
Application Domains
New Results
Contracts and Grants with Industry
Other Grants and Activities

Section: New Results

Keywords : Global Illumination, Irradiance and Radiance Caching, GPU, Interactivity.

Interactive Global Illumination

Participants : Kadi Bouatouch, Pascal Gautron, Jaroslav Křivànek.

We have designed and implemented a software for interactive global illumination using programmable graphics hardware.

Computing global illumination amounts to solve the rendering equation which is an integral equation. Unfortunately, this equation does not have an analytic solution in general. Consequently, Monte Carlo integration is the method of choice for solving it. However, Monte Carlo integration requires the computation of many samples, which makes it demanding in terms of computation time. Our objective is to propose an algorithm which allows interactive global illumination.

Figure 11. Rendering of a simple model of the Walt Disney Hall in Los Angeles. These images have been both generated in approximately 5 minutes, using Monte Carlo importance sampling (a) and Radiance Caching (b). Unlike Monte Carlo importance sampling, Radiance Caching allows to obtain smooth illumination, yielding more realistic results.
Monte Carlo sampling (a)Radiance Caching (b)

Our approach makes use of ray tracing, Monte Carlo integration and caching. It aims at extending the ``irradiance caching'' algorithm. Note that this algorithm is based on the observation that the diffuse component of radiance, reflected on a diffuse surface and due to indirect illumination, changes very slowly on this surface. This allows to sparsely sample and cache the incoming radiance, then to reuse the cached samples to estimate the incoming radiance at nearby points. This method is computationally efficient since the sampling is sparse. However this method is limited to indirect diffuse lighting computation.

We focus on extending the irradiance caching approach to indirect glossy global illumination. Our algorithm relies on ``radiance caching'' (cf figure 11 ). It is based on the caching of directional incoming radiances. We have first designed a new set of basis functions defined on the hemisphere to represent directional incoming radiance and BRDFs. This representation along with a new gradient-based interpolation method are the bases of our radiance caching-based algorithm.

Figure 12. Glossy scenes rendered using our GPU-based renderer and the Radiance Cache Splatting algorithm. The Castle (a) is illuminated by a complex lighting represented by an environment map. The Glossy Cornell Box (b) illustrates the correctness of the reflections obtained using our method. Both images have been generated in approximately 11s at resolution 1000 x1000 .
Castle (58K triangles) (a)Glossy Cornell Box (1K triangles) (b)

The ``radiance cache splatting'' algorithm allows to compute global illumination using programmable graphics hardware. Using a reformulation of irradiance and radiance caching, our method relies on the capabilities of GPUs to perform radiance interpolation. Moreover, we developed an efficient, GPU-based method to avoid the need of ray tracing (cf figurefig:gpurend). Our approach yields an overall speedup of 30-40× compared to the Radiance software, considered as the reference for irradiance caching.

For now, we only considered static scenes for our computations: the irradiance and radiance caching methods suffer from flickering artifacts when it comes to dynamic environments. Therefore, we are now aiming at extending our work for fast, high quality global illumination in dynamic scenes.


Logo Inria