As an indispensable part of photorealistic image synthesis, global illumination has been a central topic in computer graphics research. With the increasing application in film production, gaming and virtual reality in recent years. The requirement on the realism of computer generated images is on the rise, calling for more efficient global illumination algorithms. On the other hand, being a typical computation intensive task, global illumination traditionally takes hours to render a single image. With the recent rapid development of general purpose graphics processing unit (GPGPU), exploiting the parallel processing power of GPU to accelerate global illumination becomes an important trend in both research and industry.This paper focuses on the GPU implementation of two global illumination algorithms, instant radiosity and photon mapping. These algorithms are modified to be suitable for GPU implementation. First, we propose a parallel virtual point light (VPL) tree cutting algorithm to adaptively determine a proper subset of VPLs in parallel. In combination with a spherical harmonics based representation of the irradiance, our implementation is able to achieve a 10 to 20 times speedup over original CPU algorithm. We also propose a parallel implementation of photon mapping based on the same tree cutting algorithm. Our work has been integrated into a GPU rendering engine, RendrerAnts, and its utility has thus been verified. |