Clustered Principal Components for Precomputed Radiance Transfer r o rr

advertisement
Clustered Principal Components for Precomputed Radiance Transfer
real-time rendering with shadows and inter-reflections for objects with complex reflectance
10000
1000
total squared error
100
10
1
1
10
100
1000
10000
100000
1000000
10000000
n'=0
n'=1
0. 01
n'=2
0. 001
n'=4
n'=8
0. 0001
n'=16
0. 00001
uncompressed storage cost
We compress transfer matrices over many points over the surface using CPCA
(clustered principal component analysis). It approximates the transfer matrices
using an affine subspace over a small number (256) of clusters of points. Using
a few PCA vectors per cluster (n'), a good approximation is obtained.
Radiance transfer at p from source to transferred
incident to exitant. We use a transfer matrix at each
p to represent the linear transformation of source
radiance into exitant radiance. We use the spherical
harmonic basis for these radiance functions.
0. 1
Equivalent Rendering Cost Comparison:
The three left columns show various
approximations that take the same time to
render (~45Hz). CPCA provides a much
better approximation than a global linear
subspace over the whole object (PCA), or
a piecewise constant approximation (VQ).
PCA
VQ
CPCA
27Hz
27Hz
uncompressed
59Hz
Real-time rendering sample images, using CPCA-encoded transfer matrices
43Hz
Download