Download presentation
Presentation is loading. Please wait.
1
Clouds Based on Sect 5.3.3 in Parent
2
Cloud Types ● Cirrus - wispy – >20,000 ft – Ice crystals ● Altocumulus - puffy – 6500-20000ft – Water droplets ● Stratus, stratocumulus – <6500 ft, water droplets, layered
3
Rendering issues ● Amorphous, volumetric structure ● Swirling, bubbling motion ● Low-albedo (reflectance) techniques – Assume scattering effects are negligible – For cirrus ● High-albedo techniques – Scattering is significant – For thick clouds
4
More rendering issues ● Wavelength-dependent scattering ● Self-shadowing, shadows on landscape ● Volumetric shadowing – expensive – Trace rays from eye, accumulating density – For each point along ray, trace another ray towards light source to determine illumination
5
Early approaches ● Semitransparent surfaces – Fractal synthesis of plane textures – Ellipsoids with fourier-synthesized transparency – Randomly placed, overlapping spheres with solid texture, transparent near edges
6
Volumetric Clouds ● Surface-defined clouds don't allow flythroughs ● Volumetric, density-based models do ● Particle systems can model motion well, but need large numbers of particles ● Volume-rendered implicit functions – Can control implicit function with a particle system
7
Volumetric Cloud Examples ● From Nishita, et al, Siggraph 96
8
Volumetric Cloud Example ● Ebert’s method
9
Ebert's Volumetric Cloud Model ● Two-level hierarchy – High-level control for animator ● Implicit functions – Procedural low-level details ● Turbulent volume densities ● Benefits of approach – Abstraction of detail – Data amplification
10
Ebert Clouds (2) ● Implicit density function as summed implicit primitives
11
Ebert Clouds (3) ● Implicit primitives are non-solid – Before evaluating blending functions, the point's position is perturbed using noise and turbulence ● Final density is a blend of perturbed implicit density and a turbulence function – Density(p) = u*D(perturb(p)) + (1-u)*turbulence ( p ) – Setting u=1 gives “cotton balls” ● Finally, density is modified by an exponential - density = pow ( density, power )
12
Noise and Turbulence ● Noise(x,y,z) created by – Assign random values to grid vertices – Interpolate between vertices near (x,y,z) with splines ● Turbulence(x,y,z) is bandlimited noise with a “fractal” spectrum (1/f) – For (f=minfreq; f<maxfreq; f *= 2) ● Val += fabs ( noise (x*f, y*f, z*f) / f );
13
Animating Ebert Clouds ● Animate the particle system of implicit primitives – Only 100-1000 particles needed – Can use turbulence, vortex, etc to control particle motion
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.