Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Simple, Efficient Method for Realistic Animation of Clouds

Similar presentations


Presentation on theme: "A Simple, Efficient Method for Realistic Animation of Clouds"— Presentation transcript:

1 A Simple, Efficient Method for Realistic Animation of Clouds
Yoshinori Dobashi* Kazufumi Kaneda** Hideo Yamashita** Tsuyoshi Okita* Tomoyuki Nishita*** *Hiroshima City University **Hiroshima University ***University of Tokyo

2 Contents Introduction and Motivation Simulation Rendering Results
Conclusion

3 Introduction

4 Problem Overview Realistic modeling and animation of (cumulus-type) clouds Two sub-problems: Simulation of cloud formation, extinction and advection by wind Rendering of the clouds, shadows and shafts of light

5 Previous Work - Simulation
Two categories of simulation methods: Physical process of fluid dynamics Very accurate Computationally expensive Heuristic approach (procedural modeling) Computationally inexpensive Easier to implement Parameters needed

6 Previous Work - Rendering
Accounting for multiple scattering of light Computationally expensive Using 3-D textures for volume density Does not handle atmospheric effects such as shafts of light Rendering shafts of light using ray-tracing or a similar method

7 Goals Simple and efficient simulation method
Support of effects such as ... Cloud color by single scattering of light Shadows of clouds cast on the ground Shafts of light through clouds Hardware-accelerated rendering Visually convincing result

8 Simulation – Basic Idea
Cellular automaton with binary states

9 Nagel‘s Method Water vapor turns to water to form clouds
Use Nagel‘s method to simulate cloud formation: Divide 3-D space evenly into 3-D cells Assign boolean variables to each cell: cld indicates whether cell contain clouds hum indicates whether cell has enough water vapor to form clouds act indicates whether phase transition is ready to occur

10 Nagel‘s Method (cont‘d)
Cell properties in the current animation frame ti are used to compute the cell properties in the next frame ti+1: hum(x, y, z, ti+1) = hum(x, y, z, ti) Ù Øact(x, y, z, ti) cld(x, y, z, ti+1) = cld(x, y, z, ti) Ú act(x, y, z, ti) act(x, y, z, ti+1) = Øact(x, y, z, ti) Ù hum(x, y, z, ti) Ù ¦act(x, y, z , ti) ¦act is a boolean function and its value is calculated by the status of act in the surrounding cells.

11 Cloud Extinction Extension to Nagel‘s method:
cld(x, y, z, ti+1) = cld(x, y, z, ti) Ù IS(rnd > pext(x, y, z, ti)) hum(x, y, z, ti+1) = hum(x, y, z, ti) Ú IS(rnd < phum(x, y, z, ti)) act(x, y, z, ti+1) = act(x, y, z, ti) Ú IS(rnd < pact(x, y, z, ti)) rnd : uniform random number pext : probability of cloud extinction phum : probability of vapor forming pact : probability of phase transition occurence

12 Advection by Wind Clouds move, blown by winds
Wind velocity is different depending on the height from the ground cld(x, y, z, ti+1) = cld(x – v(z), y, z, ti) hum(x, y, z, ti+1) = hum(x – v(z), y, z, ti) act(x, y, z, ti+1) = act(x – v(z), y, z, ti) v(z) : wind velocity, piecewise linear function Assumption: wind blows towards the direction of x-axis

13 Controlling Cloud Motion
Ellipsoids simulate air parcels Vapor and phase transition probability: higher at center / lower at edge Cloud extinction probability: Lower at center / higher at edge Ellipsoids move in direction of wind Different kinds of clouds by controlling ellipsoid parameters (sizes and position)

14 Fast Simulation using Bitfields
Each cell state (cld, act, hum) can be stored in a single bit Low memory requirements Fast computation of simulation process Problem: Random numbers Solution: Precalculated look-up tables

15 Rendering – Basic Idea Smoothing and volume rendering
Splatting method for clouds Spherical shells for shafts of light

16 Continuous Density Distribution Calculation
Simulation output is a binary distribution Continuous density distribution results from smoothing the binary distribution Cloud density of a cell is the weighted average of the surrounding cells Each cell contributes a density distribution over an effective radius (Metaballs) Cloud density of an arbitrary point is therefore a weighted sum of a simple basis function

17 Metaball Billboards Generate 2-D texture of metaballs

18 Rendering - Step 1 Set up parallel projection with sun at viewpoint and initialize framebuffer to 1.0 Place billboards at centers of metaballs with their normals toward the sun Starting with billboard closest to the sun, project and blend billboards to framebuffer Read back value at projected billboard center to get attenuation ratio between sun and metaball

19 Rendering – Step 1 (cont‘d)
After all metaballs have been projected, framebuffer contains shadow texture

20 Rendering – Step 2 Render all world objects except clouds
Place billboards at centers of metaballs with their normals toward the observer Project and blend billboards to framebuffer starting with those farthest from viewpoint

21 Rendering – Step 2 (cont‘d)

22 Shafts of Light Render using spherical shells (made of polygons)
Modify Rendering – Step 2 to: Calculate colors of vertices of shell polygons (atmospheric conditions) Repeat for all shells (back-to-front): Render shell k with additive blending function and shadow texture mapping Render billboards between shell k-1 and shell k

23 Shafts of Light (cont‘d)

24 Results

25 Results (cont‘d)

26 Conclusion Advantages: Possible improvements:
Simulation requires little computation Memory requirements are small Rendering is fast by making use of graphics hardware Shadows of clouds and shafts of light can also be rendered Possible improvements: Effects of terrain under clouds Level of detail

27 The End Questions?


Download ppt "A Simple, Efficient Method for Realistic Animation of Clouds"

Similar presentations


Ads by Google