microfacet models for refraction through rough surfaces
play

Microfacet models for refraction through rough surfaces Bruce - PowerPoint PPT Presentation

Microfacet models for refraction through rough surfaces Bruce Walter Steve Marschner Hongsong Li Ken Torrance Cornell University Program of Computer Graphics Diffuse transmission measured transmission ground glass interface n = 1.51 1 5


  1. Microfacet models for refraction through rough surfaces Bruce Walter Steve Marschner Hongsong Li Ken Torrance Cornell University Program of Computer Graphics

  2. Diffuse transmission

  3. measured transmission ground glass interface n = 1.51 1 5 10

  4. measured transmission ground glass interface n = 1.51 1 5 10

  5. measured transmission ground glass interface n = 1.51 1 5 10

  6. measured transmission ground glass interface n = 1.51 1 5 10

  7. measured transmission ground glass interface n = 1.51 1 5 10

  8. measured transmission ground glass interface n = 1.51 1 critical angle 5 10

  9. Prior work Microfacet models in graphics • Blinn 1977 introduced Torrance-Sparrow model • Cook & Torrance 1982 Torrance-Sparrow specular • Ashikhmin et al. 2000 microfacet BRDF generator • Stam 2001 skin subsurface scattering model Work outside graphics we build on • Smith 1967 shadowing–masking framework • Nee & Nee 2004 single-interface measurement idea

  10. Contributions Microfacet transmission model • new geometric formulation • clean, simple generalization of reflection Microfacet distribution functions • evaluate three choices against data • new GGX distribution fits some surfaces better Importance sampling Measurement and validation • single interface transmission

  11. Microfacet scattering models Assumptions • rough dielectric surface • single scattering microsurface macrosurface air m n dielectric

  12. Microfacet reflection models E i Incident irradiance E i illuminates i macrosurface area dA from direction i. dA

  13. Microfacet reflection models E i Incident irradiance E i illuminates d ω o i macrosurface area dA from direction i. o L r Reflected radiance L r measured at direction o in solid angle dω o . B idirectional R eflectance D istribution F unction: f r ( i , o ) = L r E i

  14. Microfacet reflection models E i Incident irradiance E i illuminates i macrosurface area dA from direction i. Reflected radiance L r measured at o direction o in solid angle dω o . L t d ω o B idirectional R eflectance D istribution F unction: f r ( i , o ) = L r E i B idirectional T ransmittance D istribution F unction: f t ( i , o ) = L t E i

  15. Reflection to transmission Traditional microfacet reflection model: f r ( i , o ) = F ( i , m ) D ( m ) G ( i , o , m ) 4 | i · n | | o · n |

  16. Reflection to transmission Traditional microfacet reflection model: optical geometric f r ( i , o ) = F ( i , m ) D ( m ) G ( i , o , m ) 4 | i · n | | o · n | We generalize the geometric analysis dealing with the surface area where scattering occurs.

  17. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) i o

  18. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) h gives the one microsurface normal m that will scatter light from i to o . i o

  19. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) h gives the one microsurface normal m m = h ( i , o ) that will scatter light from i to o . m i • selects m o

  20. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) d ω m h gives the one microsurface normal m m = h ( i , o ) that will scatter light from i to o . m i • selects m • determines size of dω m o d ω o

  21. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) d ω m h gives the one microsurface normal m that will scatter light from i to o . m i o

  22. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) d ω m h gives the one microsurface normal m that will scatter light from i to o . m i D measures density of microsurface area with respect to microsurface normal m . o

  23. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) d ω m h gives the one microsurface normal m that will scatter light from i to o . m i D measures density of microsurface area with respect to microsurface normal m . o dA m dA dA m = ) D ( m ) d ω m dA

  24. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) d ω m h gives the one microsurface normal m that will scatter light from i to o . m i D measures density of microsurface area with respect to microsurface normal m . o G measures the fraction of points with microsurface normal m that are visible. dA m dA dA m = ) D ( m ) d ω m dA

  25. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) d ω m h gives the one microsurface normal m that will scatter light from i to o . m i D measures density of microsurface area with respect to microsurface normal m . o G measures the fraction of points with microsurface normal m that are visible. dA m dA dA m = = G ( i , o , m ) ) D ( m ) d ω m dA

  26. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) For reflection or transmission: | i · m | | i · n | | o · n | ρ ( i , o ) dA m f s ( i , o ) = dA d ω o dA m = G ( i , o , m ) D ( m ) d ω m dA

  27. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) For reflection or transmission: | i · m | | i · n | | o · n | ρ ( i , o ) D ( m ) G ( i , o , m ) d ω m f s ( i , o ) = d ω o dA m = G ( i , o , m ) D ( m ) d ω m dA

  28. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) For reflection or transmission: easy to generalize | i · m | | i · n | | o · n | ρ ( i , o ) D ( m ) G ( i , o , m ) d ω m f s ( i , o ) = d ω o dA m = G ( i , o , m ) D ( m ) d ω m dA

  29. “half-vector” function normal distribution shadowing–masking h ( i , o ) D ( m ) G ( i , o , m ) For reflection or transmission: easy to generalize | i · m | | i · n | | o · n | ρ ( i , o ) D ( m ) G ( i , o , m ) d ω m f s ( i , o ) = d ω o key contribution dA m = G ( i , o , m ) D ( m ) d ω m dA

  30. Construction of half-vector reflection refraction m i o i + o parallel to m

  31. Construction of half-vector reflection refraction h r = normalize( i + o ) m i o i + o parallel to m

  32. Construction of half-vector reflection refraction h r = normalize( i + o ) m m i i o o i + o parallel to m

  33. Construction of half-vector reflection refraction h r = normalize( i + o ) m m i i o n o i + o parallel to m i + n o parallel to m

  34. Construction of half-vector reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) m m i i o n o i + o parallel to m i + n o parallel to m

  35. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω o i o

  36. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) o d ω o i o

  37. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω o o d ω o i o

  38. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω o o d ω o h r i o

  39. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω o o d ω m d ω o h r i o d ω m = | o · h r | � i + o � 2 d ω o

  40. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω o o i d ω m d ω o h r i o o d ω o d ω m = | o · h r | � i + o � 2 d ω o

  41. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω o o i d ω m d ω o n o h r i o o d ω o d ω m = | o · h r | � i + o � 2 d ω o

  42. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω o o i d ω m d ω o n o h r i o o n 2 d ω o d ω o d ω m = | o · h r | � i + o � 2 d ω o

  43. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω o o i d ω m h t d ω o n o h r i o o n 2 d ω o d ω o d ω m = | o · h r | � i + o � 2 d ω o

  44. Construction of half-vector solid angle reflection refraction h r = normalize( i + o ) h t = − normalize( i + n o ) d ω m d ω o o i d ω m h t d ω o n o h r i o o n 2 d ω o d ω o d ω m = | o · h r | | o · h t | � i + n o � 2 n 2 d ω o � i + o � 2 d ω o d ω m =

  45. Result: scattering functions reflection | i · m | | i · n | | o · n | ρ ( i , o ) D ( m ) G ( i , o , m ) d ω m f s ( i , o ) = d ω o transmission | i · m | | i · n | | o · n | ρ ( i , o ) D ( m ) G ( i , o , m ) d ω m f s ( i , o ) = d ω o

  46. Result: scattering functions reflection | i · n | | o · n | F ( i , h r ) D ( h r ) G ( i , o , h r ) | o · h r | | i · h r | f r ( i , o ) = � i + o � 2 transmission | i · m | | i · n | | o · n | ρ ( i , o ) D ( m ) G ( i , o , m ) d ω m f s ( i , o ) = d ω o

Recommend


More recommend