Modeling and Rendering of Weathered Stone SIGGRAPH 1999 Julie Dorsey Alan Edelman Henrik Wann Jensen Justin Legakis Hans Kohling Pedersen M.I.T. Andrea Rowan February 16, 2001 Outline Problem description Previous Work System – – – Slab data structure Stone weathering model Light scattering Results Successes / Problems Problem Description Visually represent the weathering of stone Chemical weathering - erosion by water, pollutants Processes to Model Movement of water – Dissolution/recrystallization of minerals – Oxides of Carbon, Sulfur, Nitrogen Chemical transformation of minerals – Porous stone Affects stone’s appearance Deposition of atmospheric pollution – Airborne pollution or acid rain How is This Model Unique? Volume Monitoring – Simulation – – – Slab data structure Water flow Transport/Dissolution of minerals Surface erosion Subsurface scattering of light Previous Work Volume modeling – Voxels (Kaufman et al. [16]) High – storage + calculation requirements Shells (Udupa et al. [34]) Set of voxels near surface boundary Axis-aligned Subsurface Light Scattering – Dorsey et al. [7], Hanrahan et al. [12] Assume homogeneous layers of surface Previous Work Weathering effects – 2D effects Water flow (Dorsey et al. [7],[8]) Watercolors (Curtis et al. [6]) – Erosion of fractal terrains (Musgrave et al. [20]) Drop water on surface, let it run down surface collecting and depositing minerals Doesn’t account for different minerals/rocks System Architecture Input – – – Polyhedral mesh Water maps Mineral deposit maps Voxelizer Quarry Weathering Simulator Polygonizer Renderer Voxels Store mineral properties 3-D stone density function s No stone present – s=0 Decay index d – Tendancy to erode to clay Slabs Groups of Voxels Surface-Aligned 8-cornered Separated by bilinear patches Slab edges are average of area normals Quarry Rendering of Unweathered Stone Combination of solid 3D procedural textures Noise function – – Mineral patterns of granite Veins of marble Weathering Simulation 2-D stone surface – – 3-D Weathered interior – Stone meets outside environment Water evaporates from stone Grows during wet cycles Interior moist/dry front – Internal boundary Travel of Moisture Darcy’s law shows fluid speed in stone: v = -K/(p - g) v = velocity of front of fluid (calculated) K = permeability of stone (input constant) = viscosity, or resistance to flow (input constant) p = pressure of water on surface (varying) = density of water (input constant) g = gravity (input constant) Travel of Moisture Location of front at any time t: dp/dt = -·(p) = -2p - ·p = porosity, or the ratio: volume of empty space/volume of mass in stone (input constant) p = pressure of water on surface (varying) Travel of Moisture Location of moisture evolved through time with loop: – Solve dp/dt with current pressure p Internal front External surface pressure (varies as go from wet to dry seasons) – Update front location with Darcy’s law (showing v of front) Dissolution/Recrystallization Dissolution calculated at internal front: dCi/dt = - ki(mi - Ci) Ci = Concentration of dissolved mineral in the water (Calculated) ki = Solubility of the mineral m (input constant) mi = Saturated level (puts limit on dissolution) (Calculated) i = Mineral index Mineral movement Convective-diffusion equation: /t(Ci) + v·(Ci) = ·(DiCi) = porosity (input constant) Ci = Concentration of dissolved mineral in the water (calculated) v = velocity from pressure gradient (calculated) Di = Diffusivity of mineral (input constant) Mineral movement Minerals form crust on surface Green’s theorem preserves total mass Decay index (d) of each voxel is continuously modified as minerals are dissolved/deposited. Numerical Calculations Finite Difference Schemes – Solves gradient problem Slabs can be trapezoidal – Laplacian (2) calculation is complicated Light Scattering Stone contains transparent crystal grains Must consider subsurface scattering of light Light Scattering Mie – scattering (back & forward!) Light hits a particle or a molecule whose diameter is >= the wavelength of the light Light Scattering Scattered Radiance Ls = Ld+ Li – Ld = Radiance from direct illumination Shadow – ray from light source Li = Radiance from indirect illumination Photon map estimate (Photons emitted from light sources) Results Simulations: – Quad 250 MHz R10000 SGI Renderings: – Dual 400 MHz Pentium II PC with Linux Sphinx 2.2 million triangles 281 slabs, 323 voxels each Simulation - 24 hours Rendering - 80 minutes Sphinx Sandstone Column 100,000 triangles 240 slabs, 323 voxels each Simulation - 4 hours Rendering - 30 minutes Sandstone Column Successes Scientifically-based model with few hacks! Realistic looking results Good framework for diversity of effects – Easy to implement salt-water erosion Problems Slabs are edited by hand to fix overlapping Slow computation time – Can’t interactively weather the stone! Limited by lack of complete scientific knowledge References Dorsey et al. Modeling and Rendering of Weathered Stone. SIGGRAPH Conference Proceedings, 1999. Musgrave et al. The Synthesis and Rendering of Eroded Fractal Terrains. Computer Graphics, July 1989. Udupa et al. Shell Rendering. IEEE Computer Graphics and Applications, November 1993.