Interactve Renderng of Translucent Objects Hendrk Lensch Mchael Goesele Phlppe Bekaert Jan Kautz Marcus Magnor Jochen Lang Hans-Peter Sedel 2003 Presented By: Mark Rubelmann
Outlne Motvaton Background Preprocessng Renderng Results
Motvaton Translucent objects = subsurface scatterng Calculatng subsurface scatterng s expensve Observaton: multple scatterng blurs and smoothes radance
Motvaton Low frequency can be taken advantage of Global response Long dstance Lots of scatterng Radance can be calculated sparsely and nterpolated Local response Short dstance Lttle scatterng Need to mantan detal for small neghborhood
Background Full BSSRDF: 8 dmensons S x ω xo ωo Dffuse subsurface scatterng reflectance functon: 4 dmensons R d x xo
Background R d relates ncomng flux to outgong dffuse radance: Ω + = = = 1 x t S o d o o o t o o d N F x L x E dx x x R x E x B x B F x L ω ω ω η ω ω η π ω
Background R d s very smlar to G n radosty Both are throughput factors dscrete verson n Galerkn radosty s form factor G only encodes geometrc nformaton; storage costs are too hgh for relghtng R d mantans lght transport propertes between any two ponts and can handle dynamc lghtng
Preprocessng Need dscrete formulaton of Bx o Actually use 2 formulatons wth two sets of bass functons Global bass: hat functons at object vertces Local bass: Pecewse-constant functons correspondng to surface texels
Preprocessng - Geometry Splt mesh up nto chunks of nearly-planar trangles and buld 2D texture atlas
Preprocessng Global Response Scatterng over long dstances s smooth Vertex-to-vertex throughput factors are used = = j g j S S j d j d j E F B v v R A dy y dx x v v R F 3 ~ ψ ψ
Preprocessng Local Response Use texel-to-texel throughput factors to preserve detals Modeled as 7 x 7 flter kernel K u v s t = A u v Rd xc u v xc s t
Preprocessng Blendng Local and Global Addng local and global results n twce the correct amount n drect llumnaton areas
Preprocessng Blendng Local and Global Drect llumnaton found along dagonal of form factor matrx F F 0 s F wthout drect llumnaton Bx found by ntroducng B d B x = B l x + B d x + B g 0 x B g j 0 = E g F 0 j
Preprocessng Blendng Local and Global Also need to blend border between local and global Calculate correct radosty by generatng 9 x 9 kernel Adjust weghtng of global radosty to mnmze dfference
Renderng Compute drect llumnaton map Implemented wth vertex shader Splt processng nto two branches: global and local Global and local responses combned by mult-texturng n hardware
Renderng
Renderng Global Response Fnd rradance at each vertex B g y at ntermedate surface pont y s calculated by lnear nterpolaton Surface radosty can be modulated by texture T p g T B B = T v p
Renderng Local Response Convolve llumnaton map wth flter kernel of every texel = = 7 7 t s v u v u l t s E t s K t s E t s K x B Intal mplementaton done n software
Results Renderngs done on dual 1.7 GHz Xeon wth 1 GB RAM and GeForce3 vdeo card
Results Mddle: smple blendng Rght: optmzed blendng
Results Local response Global response Combned
Results Wth and wthout modulatng texture
Results Skm mlk?