{"id":345560,"date":"2017-01-03T10:26:28","date_gmt":"2017-01-03T18:26:28","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?post_type=msr-research-item&p=345560"},"modified":"2018-10-16T21:53:37","modified_gmt":"2018-10-17T04:53:37","slug":"frequency-precomputed-radiance-transfer-glossy-objects","status":"publish","type":"msr-research-item","link":"https:\/\/www.microsoft.com\/en-us\/research\/publication\/frequency-precomputed-radiance-transfer-glossy-objects\/","title":{"rendered":"All-Frequency Precomputed Radiance Transfer for Glossy Objects"},"content":{"rendered":"

We introduce a method based on precomputed radiance transfer (PRT) that allows interactive rendering of glossy surfaces and includes shadowing effects from dynamic, \u201call-frequency\u201d lighting. Specifically, source lighting is represented by a cube map at resolution nL = 6 \u00d7 32 \u00d7 32. We present a novel PRT formulation which factors glossy BRDFs into purely view-dependent and light-dependent parts, achieving reasonable accuracy with only m=10 dimensional factors. We then tabulate an m \u00d7 nL transfer matrix at each surface vertex as a preprocess, representing the object\u2019s response to this lighting. Because this surface signal is so high-dimensional, reducing m is crucial for making practical both the preprocessing and run-time. To compress the transfer matrices, we divide the cube map into 24 lighting segments and apply the Haar wavelet basis in each segment to provide sensible quantization. We also apply clustered principal component analysis (CPCA) to each PRT segment to approximate it as a linear combination of a few (n=16) representative transfer matrices within a small set of clusters over the surface. This exploits spatial coherence to compress very effectively. Most important, it maintains fast rendering rates with 2-3 orders of magnitude more lighting coefficients than previous methods, which increases accuracy and avoids temporal artifacts in high-frequency lighting environments. We demonstrate interactive performance (1-5Hz) on models having up to 50,000 vertices.<\/p>\n