Previous Work Previous Work The Discretization The Diffusion Equation Storage Management Algorithm Results Performance
Photon Mapping Photon Mapping - physically accurate, but veery slow (hours per frame)
A practical model for subsurface light transport by JENSEN H. W., MARSCHNER S. R., LEVOY M., HANRAHAN P. - diffusion approximation for homogeneous materials (minutes per frame)
Parallel solution to the radiative transport by SZIRMAY-KALOS L., LIKTOR G., MENHOFFER T., TÓTH B., KUMAR S., LUPTON G. - homogeneous material (real time)
Precomputed radiance transfer for real-time rendering in dynamic, lowfrequency lighting environments. by SLOAN P.-P., KAUTZ J., SNYDER J. Precomputed radiance transfer for real-time rendering in dynamic, lowfrequency lighting environments. by SLOAN P.-P., KAUTZ J., SNYDER J. Modeling and rendering of heterogeneous translucent materials using the diffusion equation. by WANG J., ZHAO S., TONG X., LIN S., LIN Z., DONG Y., GUO B., SHUM H.-Y. - heterogeneous material, real time and dynamic material properties
- but: restricted to simple geometry
Precompute tetrahedral structure Compute the incoming radiance on the surface Solve the diffusion equation - PDE solved by relaxation method
- surface radiance as boundary condition
- discretised on the tetrahedral connectivity graph (Quadgraph)
- parallel on the GPU
Display the results
no regular grid (problematic with fine and complex geometry) no regular grid (problematic with fine and complex geometry) Quadgraph - 4-connected structure
- automatic tetrahedralization: “Variational tetrahedral meshing“ by ALLIEZ P., COHEN-STEINER D., YVINEC M., DESBRUN M.
- controlled by parameter K, the size difference between inner and near surface tetrahedra
0 to 3 surface face tetrahedra split 2 and 3 surface face tetrahedra “0-tetrahedra“ == inner node “1-tetrahedra“ == 1 inner node + 1 surface node
The physically motivated equation - inner nodes:
- surface nodes:
Finite Difference Method to discretise
using textures using textures
about 20MB for 100k vertices
improve cache hit rate for 30% to 60% speedup improve cache hit rate for 30% to 60% speedup divide textures into r x r blocks start at a seed node and fill the block by breadth-first traversal in the Quadgraph
do not render the original geometry, but render the surface generated by triangulation of the surface nodes do not render the original geometry, but render the surface generated by triangulation of the surface nodes
Intel Core2Duo 2.13GHz CPU, with 2GB memory and an NVIDIA Geforce 8800GTX GPU with 768MB graphics memory Intel Core2Duo 2.13GHz CPU, with 2GB memory and an NVIDIA Geforce 8800GTX GPU with 768MB graphics memory
Dostları ilə paylaş: |