02941 Physically Based Rendering Subsurface Scattering Jeppe Revall Frisvad June 2020
Volumes to surfaces ◮ From local to global formulation [Preisendorfer 1965]. refraction medium medium scattering absorption subsurface scattering Local Global ◮ Suppose we let L 0 = T r (0 , s ) L (0) denote direct transmission. ◮ Preisendorfer introduces a scattering operator S j denoting the illumination that has scattered j times inside the medium. ◮ The scattering operator provides a path from the radiative transfer equation (local) to the rendering equation (global): ∞ ∞ � � L = L 0 S 0 + L 0 S j = L 0 S j . j =1 j =0 References - Preisendorfer, R. W. Radiative Transfer on Discrete Spaces . Pergamon Press, 1965.
BSSRDF ◮ Since a monotone, bounded sequence of nonnegative real numbers ( � n j =0 L 0 S j ) converges to a real number ( L ), a global solution exists. Thus ∞ � L 0 S j = L 0 S . L = ◮ But what is S ? j =0 ◮ For X → • x , S → σ s p ( x , � ω i , � ω o ) . ◮ Continuous boundary and interior leads from S to S ( X ; x i , � ω i ; x o , � ω o ), the so-called Bidirectional Scattering-Surface Reflectance Distribution Function. ◮ Originally called “the scattering function” [Venable and Hsia 1974] where it included time dependency and inelastic scattering. (Arguably a better name.) References - Venerable, Jr., W. H., and Hsia, J. J. Optical Radiation Measurement: Describing Spectrophotometric Measurements. Technical report, National Bureau of Standards (US), 1974.
Subsurface scattering ◮ Behind the rendering equation n 1 [Nicodemus et al. 1977] : x i x o d L r ( x o , � ω o ) ω i ) = S ( x i , � ω i ; x o , � ω o ) dΦ i ( x i , � n 2 ◮ An element of reflected radiance d L r comes from an element of incident flux dΦ i . ◮ S (the BSSRDF) is the proportionality factor between the two. d 2 Φ ◮ Using the definition of radiance L = cos θ d A d ω , we have � � L r ( x o , � ω o ) = S ( x i , � ω i ; x o , � ω o ) L i ( x i , � ω i ) cos θ i d ω i d A . A 2 π References - Nicodemus, F. E., Richmond, J. C., Hsia, J. J., Ginsberg, I. W., and Limperis, T. Geometrical considerations and nomenclature for reflectance. Tech. rep., National Bureau of Standards (US), 1977.
Evaluating the rendering equation for subsurface scattering ◮ The rendering equation for subsurface scattering: � � L o ( x o , � ω o ) = L e ( x o , � ω o ) + S ( x i , � ω i ; x o , � ω o ) L i ( x i , � ω i ) cos θ i d ω i d A . 2 π A ◮ Initialize a frame by storing samples of transmitted light. ◮ For each sample: ◮ Sample a point ( x i ) on the surface of the translucent object: ◮ Sample a triangle in the mesh (pdf( △ ) = A △ / A , where A △ is triangle area and A is total surface area, use binary search with the face area cdf). ◮ Sample a point on the triangle (pdf( x i , △ ) = 1 / A △ , use barycentric coordinates). ◮ Sample incident light L i by sampling � ω i using a cosine-weighted hemisphere (pdf( � ω i ) = cos θ i /π ), for example. ◮ Use � ω i to find the direction of the transmitted ray and the Fresnel transmittance T i . ◮ Compute the transmitted radiance: T i L i cos θ i L t = ω i ) = T i L i π A . pdf( △ )pdf( x i , △ )pdf( �
Evaluating the rendering equation for subsurface scattering ◮ The rendering equation for subsurface scattering: � � L o ( x o , � ω o ) = L e ( x o , � ω o ) + S ( x i , � ω i ; x o , � ω o ) L i ( x i , � ω i ) cos θ i d ω i d A . A 2 π ◮ To shade a ray hitting x o with direction − � ω o : ◮ Compute Fresnel transmittance T o of the ray refracting to � ω o from inside the medium. ◮ Accept samples according to a Russian roulette using exponential distance attenuation as probability. [Rejection control.] ◮ Use L t of accepted samples and T o together with the analytical expression for S to Monte Carlo integrate the rendering equation. ◮ The Monte Carlo estimator is: M N 1 S ( x i , p , � ω i , q ; x o , � ω o ) L i ( x i , p , � ω i , q ) cos θ i � � L d , N , M ( x o , � ω o ) = NM pdf( x i , p )pdf( � ω i , q ) p =1 q =1 M N 1 T o S d ( x i , p , � ω i , q ; x o , � ω o ) L t ( x i , p , � ω i , q ) � ξ < e − σ tr � x o − x i , p � � � � = . e − σ tr � x o − x i , p � NM p =1 q =1
Radiative transfer as diffusion ◮ The local formulation: Consider a point x along a ray traversing a medium in the direction � ω . Then � ω ′ ) d ω ′ . ( � ω · ∇ ) L ( x , � ω ) = − σ t ( x ) L ( x , � ω ) + σ s ( x ) p ( x , � ω ′ , � ω ) L ( x , � 4 π ω x = x + s d o ◮ We assume that the medium is turbid (scattering), but not emissive. (The emission term L e ( x , � ω ) has been left out.) ◮ To find a global formulation, we think of multiple scattering as a diffusion process.
Fluence and vector irradiance ◮ In diffusion theory, we use quantities that describe the light field in an element of volume of the scattering medium. x ◮ Total flux, or fluence, is defined by d z y d y � φ ( x ) = L ( x , � ω ) d ω . d x 4 π x z ◮ Net flux, or vector irradiance, is � E ( x ) = � ω L ( x , � ω ) d ω . 4 π ◮ E is measured in flux per (orthogonally) projected area. ◮ The areas are d y d z , d x d z , and d x d y .
Fick’s law of diffusion ◮ The direction in which the fluence undergoes the greatest rate of increase is � ∂φ ∂ x , ∂φ ∂ y , ∂φ � ∇ φ = . ∂ z ◮ Intuitively it is then reasonable to assume the proportionality ( Fick’s law of diffusion ) E ( x ) = − D ( x ) ∇ φ ( x ) . ◮ This assumption is only valid in the asymptotic regions of a medium, that is, in regions far enough from the boundaries to ensure that most light has suffered from multiple scattering events. ◮ The value of the diffusion coefficient D is also important for the correctness of the law. ◮ The standard value D = 1 / (3 σ ′ t ) is valid for nearly isotropic, almost non-absorbing materials.
The diffusion equation ◮ Integrating the radiative transfer equation over all outgoing directions results in � � � � ω ′ ) d ω ′ d ω . ω ′ , � ( � ω · ∇ ) L ( x , � ω ) d ω = − σ t ( x ) L ( x , � ω ) d ω + σ s ( x ) p ( x , � ω ) L ( x , � 4 π 4 π 4 π 4 π ◮ In terms of fluence φ and vector irradiance E , this turns into ∇ · E ( x ) = − σ t ( x ) φ ( x ) + σ s ( x ) φ ( x ) = − σ a ( x ) φ ( x ) . ◮ Inserting Fick’s law ( E = − D ∇ φ ), we get the diffusion equation (for a non-emitter): ∇ · ( D ( x ) ∇ φ ( x )) = σ a ( x ) φ ( x ) . which we can solve for φ to get the light field in a scattering medium.
Splitting up the BSSRDF ◮ Bidirectional scattering surface reflectance distribution function: S ( x i , � ω i ; x o , � ω o ) . ◮ In asymptotic regions of the medium, we can use diffusion. ◮ Splitting up the BSSRDF ω i , n i , n med ) + S 1 . S ( x i , � ω i ; x o , � ω o ) = T o ( � ω o , n med , n o ) S d ( � x o − x i � ) T i ( � where ◮ T i and T o are Fresnel transmittance terms. ◮ S 1 is the single scattering operator. ◮ S d is the diffusion part. ◮ n med , n i , and n o are the refractive indices of the scattering medium, the one from where light is incident (incoming), and the one from where light is emergent (outgoing). ◮ Note that the diffusion part depends only on the distance between the point of incidence ( x i ) and the point of emergence ( x o ).
The diffusion part of the BSSRDF ◮ Consider the diffusion part of the BSSRDF S d only. d L d ( x o , � ω o ) ω i ) = S d ( � x o − x i � ) . dΦ i ( x i , � d 2 Φ cos θ d A d ω , radiant exitance is M = d Φ ◮ Radiance is L = dA . ◮ By cosine-weighted integration over all outgoing directions, we have � d L d ( x o , � ω o ) � ω i ) cos θ d ω = S d ( � x o − x i � ) cos θ d ω . dΦ i ( x i , � 2 π 2 π ◮ Since S d only depends on distance, we get d M d ( x o ) ω i ) = π S d ( � x o − x i � ) . dΦ i ( x i , �
Boundary conditions ◮ Assume that no diffuse radiance is scattered in the inward direction at the surface. Then � ω ′ ) cos θ d ω ′ = 0 L ( x , � � ω ′ ) cos θ d ω ′ = � − 2 π ⇒ M d ( x ) = L ( x , � n · E ( x ) . � ω ′ ) cos θ d ω ′ = M d ( x ) L ( x , � 4 π 2 π ◮ The assumption rarely holds, but this gives a link between surface and volume rendering (the local and the global formulation of radiative transfer): M d ( x ) = � n · E ( x ) , where � n is the unit length surface normal. ◮ This link is crucial for the model. A correction is used later to alleviate the error introduced by the incorrect assumption.
The dipole approximation ◮ An approximate solution for the diffusion equation: � e − σ tr d r − e − σ tr d v Φ � � φ ( z ) = , σ tr = 3 σ a σ ′ t , σ ′ t = σ a + (1 − g ) σ s . 4 π D d r d v z -axis ◮ σ s is the scattering z real source r coefficient. n dr ◮ σ a is the absorption coefficient. n 2 ◮ g is the asymmetry z = 0 r n 1 parameter. ω i ω o ◮ r is the distance dv incident light between x i and x o . observer -zv virtual source
Recommend
More recommend