Nusselt Analog
Transcription
Nusselt Analog
CPSC 641 Computer Graphics: Radiosity Jinxiang Chai Local Illumination Ir = kaIa + Ii (kd (n.l) + ks(h.n)m ) ambient diffuse specular Local Illumination Ir = kaIa + Ii (kd (n.l) + ks(h.n)m ) ambient diffuse specular Local Illumination Ir = kaIa + Ii (kd (n.l) + ks(h.n)m ) ambient diffuse specular if there are multiple lights there is a sum of the specular and diffuse components for each light Local Illumination Ir = kaIa + Ii (kd (n.l) + ks(h.n)m ) ambient diffuse specular if there are multiple lights there is a sum of the specular and diffuse components for each light What are limitations of local illumination? Rendering: Illumination Computing Direct (local) illumination Light directly from light sources No shadows Direct and Indirect Light Rendering: Illumination Computing Direct (local) illumination Light directly from light sources No shadows Indirect (global) illumination Hard and soft shadows Diffuse interreflections (radiosity) Glossy interreflections (caustics) Early Radiosity Consolation Room Challenge To evaluate the reflection equation the incoming radiance must be known Lr ( x, r ) f ( x, )L ( x, )cos d r i r i i H2 To evaluate the incoming radiance the reflected radiance must be known i i Radiosity Only consider inter-reflections between diffuse surfaces! Radiosity: Key Idea #1 Diffuse Surface Radiosity: Key Idea #2 Constant Surface Approximation Radiosity Equation Radiosity Equation Radiosity Algorithm Radiosity Algorithm Energy Conservation Equation Energy Conservation Equation Form factor Compute Form Factors Compute Form Factors Radiant energy reaching Ay from Ax Radiant energy leaving Ax in all directions Form Factor: Reciprocity Radiosity Equation Linear System Radiosity Algorithm Form Factors Form Factor: How to compute? Closed Form - anlytical Hemicube Monte Carlo Form Factor: Analytical Form Factor: How to compute? Closed Form - anlytical Hemicube Monte Carlo Form Factor: Nusselt Analog Form Factor: Nusselt Analog Why is it true? Form Factor: Nusselt Analog Form Factor: Nusselt Analog How can we use this property? Form Factor: Nusselt Analog How can we use this property? - Speed up form-factor evaluation Form Factor: HemiCube Delta Form Factor: Top Face Top of hemicube Delta Form Factors: Side Faces Side of hemicube The Hemicube in Action Form Factor: HemiCube Form Factors Radiosity Algorithm How to Solve Linear System? Matrix conversion Iterative approaches - Jacobian - Gauss-Seidel Matrix Conversion Iterative Approaches Jacobian Successive Approximation Le K Le Le Le K Le K K Le Le K 2 Le K K K Le Le K 3 Le Gauss-Seidel Gauss-Seidel (Cont.) Radiosity Algorithm Rendering The final Bi's can be used in place of intensities in a standard renderer (Gouraud) Radiosities are constant over the extent of a patch A standard renderer requires vertex intensities (or radiosities) If the radiosities of surrounding patches are know, vertex radiosities can be estimated using bilinear interpolation Vertex Intensity: Bilinear Interpolation Theatre Steel Mills Radiosity: Benefit Global illumination method: modeling diffuse interreflection Color bleeding: a red wall next to a white one casts a reddish glow on the white wall near the corner Soft shadows – an “area” light source casts a soft shadow from a polygon No ambient term hack, so when you want to look at your object in low light, you don’t have to adjust parameters of the objects – just the intensities of the lights! View independent: it assigns a brightness to every surface Radiosity: Limitation Radiation is uniform in all directions Radiosity is piecewise constant – usual renderings make this assumption, but then interpolate cheaply to fake a nice-looking answer – this introduces quantifiable errors No surface is transparent or translucent Reflectivity is independent of directions to source and destination