Graphics Reference
In-Depth Information
reduces to just a vector ( t , in the notation above), and the transfer computation
reduces to just a dot product. For specular reflection the authors used a simple
Phong model, which is approximated and evaluated using a technique known as
zonal harmonics to leverage the symmetry about the direction of reflection.
10.1.4 PRT Rendering
Given the transfer matrices, the rendering process is straightforward. The incident
light vector is constructed by projecting the incident light, which can come from
an environment map or some other light source, onto the SH basis functions.
To render a particular point on the surface, the outgoing radiance light vector is
computed by multiplying the incident vector by the transfer matrix, and the value
at the particular viewing direction is computed from the SH expansion. In the case
of a diffuse surface, this process amounts to a single dot product, as the outgoing
radiance is constant. The authors' hardware implementation (in 2002) was able to
achieve interactive frame rates for objects having moderately complex geometry.
The precomputation, however, required as long as several hours.
10.1.5 PRT Extensions
The method described in the previous subsections for constructing the transfer
matrices includes direct reflection, self-shadowing, and interreflection. There is
no reason, though, that it has to be limited to these effects. Volumetric effects,
such as subsurface scattering, could also be included if the simulation performed
in the precomputation accounted for them. The method can be extended to volu-
metric scattering in a participating medium if the sample points at which an SH
representation is constructed is extended from points only on the object surface to
points in space. The simulation becomes more complicated in this case, because
of the need to compute attenuation and in-scattering and then integrate these ef-
fects over each sample ray.
The basic PRT method works on a single object. The volumetric approach can
be employed to allow for the interaction of light between two objects, even if they
move with respect to each other. Doing this requires a volumetric representation,
which is a generalization of an irradiance volume. Each point in the volume
contains its own transfer matrix. For definiteness, call the two objects A and B .
The process works like the transfer simulation described above for self-transfer,
except that the point q is regarded as being in space, and the lighting at each pass
is obtained from the transfer matrix at q , even in the shadow pass. This allows
object B to be lit depending on the interaction or occlusion of object A , because the
effect of A is included at render time. This approach can be applied independent
Search WWH ::




Custom Search