Real-Time Rendering of Planets with Atmospheres Tobias Schafhitzel, Martin Falk, Thomas Ertl Universität Stuttgart, Germany
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Motivation Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Outline Introduction Atmospheric scattering Computation of the scattering texture Rendering Results Conclusion and future work Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Outline Introduction Atmospheric scattering Computation of the scattering texture Rendering Results Conclusion and future work Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Introduction Rendering a planet’s atmosphere Physically based computation color shifts, light attenuation Sunset, sunrise, midday Combination with terrain rendering Real-time approach Games CAD Explorative tools (i.e. Google Earth,…) Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Previous Work Atmospheric Scattering Atmospheric Scattering Effects of the Earth [Nishita et al. 93] Real-Time Atmospheric Scattering [O’Neil 04] Interactive Rendering of atmospheric Scattering Effects using Graphics Hardware [Dobashi et al. 02] Accurate Atmospheric Scattering [O’Neil 05] Terrain Rendering Real-Time continuous Level of Detail Rendering of Height Field [Lindstrom et al. 96] Real-Time Generation of continuous Level of Detail for Height Fields [Röttger et al. 98] Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Outline Introduction Atmospheric scattering Computation of the scattering texture Rendering Results Conclusion and future work Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Atmospheric Scattering Light scattering equation: Pv Pc Pa atmosphere φ Pb earth Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Outline Introduction Atmospheric scattering Computation of the scattering texture Rendering Results Conclusion and future work Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Computation of the scattering texture Parametrization of the 3D scattering texture: Arbitrary height h = |Pv| For each h Arbitrary view angle θ For each θ an arbitrary angle to the sun φ φ θ Pv h Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Intersection Tests PV PV Camera inside the atmosphere → use 1st intersection Camera outside → no scattering → move camera to outer boundary → constant height for parameterization → use 2nd intersection Two textures for intersections with Inner sphere Outer sphere Easy to switch when rendering PV Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Outline Introduction Atmospheric scattering Computation of the scattering texture Rendering Results Conclusion and future work Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Rendering the sky Sky: tessellated sphere View ray Rv connect vertex Pg with camera Pv Compute h, θ and φ and map to [0,1] φ is constant (directional light) Fetch the scattering texture (simple lookup) Pc Pg φ θ Rv Pv Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Rendering the terrain More complex Consider structure of the terrain Naive computation fails Distance too long Terrain color not considered Solution Compute scattering along PvPb Subtract contribution along PgPb Two texture lookups: PV Pg Pb Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Rendering the terrain II Considering the terrain color Illumination of the terrain Incident light is attenuated: Reflected light is attenuated Overall light contribution: Pc Ig PV Igv Pg Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Outline Introduction Atmospheric scattering Computation of the scattering texture Rendering Results Conclusion and future work Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Results Earth dataset (2572 x 24 x 12) Mars dataset (652 x 24 x 12) Earth Mars Outside 67.26 83.51 Inside 30.31 56.02 Terrain outside 76.44 102.37 Terrain inside 35.83 61.19 All measurements in fps Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Europe at morning Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Alps at morning Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Alps at midday Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres Sunrise Tobias Schafhitzel – Real-Time Rendering of Planets with Atmospheres
Questions ?