Friday, June 11, 2010

Stochastic progressive photon mapping in Luxrender GPU

The guys behind Luxrender have released smallppmGPU and smallsppmgpu, two demos that incorporate ppm and sppm, which are very interesting unbiased algorithms that are much more efficient in rendering caustics than other unbiased methods (plain path tracing in particular) and which also offers nice DOF and motion blur. Link: http://www.luxrender.net/forum/viewtopic.php?f=34&t=4024 (registration is needed)

The next step for the GPU renderers which rely on brute force path tracing is to investigate more efficient and faster algorithms such as bidirectional path tracing and Metropolis light transport running entirely on the GPU. There is already research going on in this area e.g. "Path Regeneration for Interactive Path Tracing" by Novak, Havran and Dachsbacher describes an efficient bidirectional path tracer running on the GPU (http://www.vis.uni-stuttgart.de/~novakjn/paper/eg2010_pt.pdf).

Another logical evolution is getting biased algorithms (photon mapping, irradiance cache) to work efficiently on the GPU. This seems to be a much more difficult (but not impossible) task than having unbiased rendering on the GPU because these biased algo's are much more difficult to parallellize. Some recent papers in this area:

Morgan McGuire and David Luebke: Hardware-Accelerated Global Illumination by Image Space Photon Mapping

Bartosz Fabianowski and John Dingliana: Compact BVH Storage for Ray Tracing and Photon Mapping

Rui Wang et al.: An Efficient GPU-based Approach for Interactive Global Illumination

Maybe Chaos Group will stun us again at Siggraph 2010 with a biased GPU renderer, which renders 10 times faster than V-Ray GPU :-). Lots of interesting approaches to be explored and more exciting times ahead!

1 comment:

hamiltonham said...

Great stuff, your thoughts resonate well with me :D