Rendering Glints on High-Resolution Normal-Mapped Specular Surfaces
Abstract
Rendering a complex specular surface under sharp point lighting is far from easy. Using Monte Carlo point sampling for this purpose is impractical: the energy is concentrated in tiny highlights that take up a minuscule fraction of the pixel. We instead compute the accurate solution that Monte Carlo would eventually converge to, using a completely different deterministic approach with minimal approximations. Our method considers the true distribution of normals on a surface patch seen through a single pixel, which can be highly complicated. This requires computing the probability density of the given normal coming from anywhere on the patch. We show how to evaluate this efficiently, assuming a Gaussian surface patch and Gaussian intrinsic roughness. We also take advantage of hierarchical pruning of position-normal space to quickly find texels that might contribute to a given normal distribution evaluation. Our results show complicated, temporally varying glints from materials such as bumpy plastics, brushed and scratched metals, metallic paint and ocean waves.
Video
Figures
Text citation
Ling-Qi Yan, Miloš Hašan, Wenzel Jakob, Jason Lawrence, Steve Marschner, and Ravi Ramamoorthi. 2014. Rendering Glints on High-Resolution Normal-Mapped Specular Surfaces. In ACM Transactions on Graphics (Proceedings of SIGGRAPH) 33(4). 116:1–116:9.
BibTeX
@article{Yan2014Rendering, author = {Ling-Qi Yan and Miloš Hašan and Wenzel Jakob and Jason Lawrence and Steve Marschner and Ravi Ramamoorthi}, title = {Rendering Glints on High-Resolution Normal-Mapped Specular Surfaces}, journal = {ACM Transactions on Graphics (Proceedings of SIGGRAPH)}, volume = {33}, number = {4}, pages = {116:1--116:9}, year = {2014}, month = jul, doi = {10.1145/2601097.2601155} }