Reducing Noise in Image-Space Caustics with Variable-Sized Splatting
Chris Wyman
The University of Iowa
Carsten Dachsbacher
University of Stuttgart
This paper appears in issue Volume 13, Number 1.
An electronic version of this article is available.
Abstract
In this paper, we present improvements to the recently introduced technique of caustics mapping, which allows for interactive hardware-accelerated rendering of caustics. These improvements reduce noise without completely eliminating the high-frequency details necessary for realistic caustics. When creating a basic caustics map, photons are emitted from the light in a regular grid pattern—each pixel in a rasterized image becomes a photon. However, photon convergence and divergence arising from reflections and refractions leads to oversampling and undersampling, as photons are no longer evenly distributed about the environment. Our improved techniques treat each photon as a variable-sized splat, allowing photon energy to be distributed over larger- or smaller-sized regions. Conceptually, these splats are similar to the variable-radius k-nearest neighbor search used in photon mapping, allowing noise reduction in areas of low photon density while maintaining crisp caustics at focal points. Our techniques improve quality at a modest cost that is significantly cheaper than supersampling the photon buffer. Source code is available online.
Author Information
Chris Wyman, Department of Computer Science, 14 MacLean Hall, The University of Iowa, Iowa City, IA 52242-1419 cwyman@cs.uiowa.edu
Carsten Dachsbacher, Visualization Research Center, University of Stuttgart, Nobelstrasse 15 70569 Stuttgart, Germany dachsbacher@visus.uni-stuttgart.de
Demo Code
jgtCaustics_demoCode.zip - Source code for our implementation, along with precompiled binaries and demonstration videos.BibTeX Entry
@article{WymanDachsbacher08,
author = "Chris Wyman and Carsten Dachsbacher",
title = "Reducing Noise in Image-Space Caustics with Variable-Sized Splatting",
journal = "journal of graphics, gpu, and game tools",
volume = "13",
number = "1",
pages = "1-17",
year = "2008",
}
