Title: A Simple, Efficient Method for Realistic Animation of Clouds
1A Simple, Efficient Method for Realistic
Animation of Clouds
Yoshinori Dobashi (Hiroshima City University)
Tsuyoshi Okita (Hiroshima City University)
Kazufumi Kaneda (Hiroshima University)
Tomoyuki Nishita (University of Tokyo)
Hideo Yamashita (Hiroshima University)
2Incorrect Numbering of Reference
Typo
Incorrect
(Proceedings)
Correct
(CD-ROM)
3Introduction
- Simulation of natural phenomena using computer
graphics
4Introduction
Important elements for realistic animation of
clouds
- complex motion
- easy to implement
- fast simulation of cloud motion
- photorealistic images
- fast image generation
5Introduction
Important elements for realistic rendering of
clouds
atmospheric effects (shafts of light)
cloud color
shadows
6Previous Work Simulation of Cloud Motion
Imple-ment
motion
speed
Simulation methods
Numerical simulation Kajiya84
Textured ellipsoids Gardener85
Diffusion process Stam93,Stam95
Fractal Ebert97
Qualitative simulation Neyret97
Particle system Kikuchi98
Stable fluids Stam99
7Previous Work Rendering of Clouds
shafts of light
shadows
colors
Rendering methods
speed
Ray-tracing method e.g. Kajiya84
Scanline method Ebert90
2D texture mapping e.g. Gardener85
3D texture mapping Stam99
8Previous Work Rendering of Clouds
shafts of light
shadows
colors
Rendering methods
speed
Ray-tracing method e.g. Kajiya84
Scanline method Ebert90
2D texture mapping e.g. Gardener85
3D texture mapping Stam99
9Proposed Method
- small amount of computation
- cloud color taken into account single
scattering model
10Simulation Process
Basic idea
- Voxels correspond to cells
11Simulation Process
Basic idea
- Status of variables 0 or 1
by Boolean operations
- cloud growth
- cloud extinction
- advection by wind
12Growth Simulation Nagel92
Cloud formation process
Water vapor becomes water droplets (clouds) due
to phase transition.
13Realizing Complex Motion
cld0
act0
hum0
State transition of a cell
cld1
act1
hum1
14Realizing Complex Motion
15Realizing Complex Motion
1 humid area (spheres/elipsoids in 3D)
2 change hum act from 0 to 1
16Advection by Wind
- Clouds move in one direction, blown by wind.
- Shifting all variables following the wind
direction.
17Rendering Process
Basic idea
0 or 1
18Calculation of Density Distribution
Create continuous distribution using metaballs
- center density filtered value
19Rendering Clouds
Color of clouds (single scattering only)
sunlight
clouds
background color
viewpoint
20Rendering Clouds
Preprocess
compute billboard texture
metaball
virtual plane (billboard)
Calculation steps
1 calculate intensity reaching each metaball
2 clouds viewed from the viewpoint
21Preprocess Computing Billboard Texture
1 Divide billboard into mesh
2 Assume a ray passing through each mesh
element
3 Compute cumulative density and attenuation
ratio
metaball
4 Store the values as billboard texture
billboard
22Step 1 Light Reaching at Each Metaball
sun
1 Set camera at the sun, parallel projection
1 Set camera at the sun, parallel projection
2 Sort metaballs
3 Place billboards
4 Initialize frame buffer
metaball
5 Project billboards
5 Project billboards
frame buffer
23Step 1 Light Reaching at Each Metaball
sun
5 Project billboards
1
3
6 Store shadow texture
2
4
5
projection
24Step 1 Light Reaching at Each Metaball
sun
5 Project billboards
1
3
6 Store shadow texture
6 Store shadow texture
2
4
5
25Step 2 Clouds Viewed from Viewpoint
1 Render background
metaball
2 Sort metaballs
viewpoint
3 Rotate billboards
4 Project billboards
frame buffer
26Step 2 Clouds Viewed from Viewpoint
1 Render background
metaball
2 Sort metaballs
viewpoint
2
4
3 Rotate billboards
1
3
5
4 Project billboards
27Step 2 Clouds Viewed from Viewpoint
1 Render background
2 Sort metaballs
viewpoint
2
4
3 Rotate billboards
1
3
5
4 Project billboards
28Rendering Shafts of Light
Intensity at viewpoint
sun S
Isun
clouds
t'
P
t
V
a
29Rendering Shafts of Light
Intensity at viewpoint
sun S
Isun
clouds
t'
P
t
V
a
time-consuming
30Rendering Shafts of Light
Ieye
sun S
Is
clouds
1.Place spherical shells
2.Compute Isunb(t)F(a) b(t)
3.Map shadow texture
V
4.Draw shells with additive blending
31Rendering Shafts of Light
Ieye
sun S
Is
clouds
1.Place spherical shells
spherical shells
2.Compute Isunb(t)F(a) b(t)
3.Map shadow texture
V
4.Draw shells with additive blending
32Rendering Shafts of Light
Ieye
sun S
Is
clouds
1.Place spherical shells
spherical shells
2.Compute Isunb(t)F(a) b(t)
3.Map shadow texture
V
4.Draw shells with additive blending
33Rendering Shafts of Light
Ieye
sun S
Is
clouds
1.Place spherical shells
spherical shells
2.Compute Isunb(t)F(a) b(t)
3.Map shadow texture
V
4.Draw shells with additive blending
34Rendering Shafts of Light
Ieye
sun S
Is
clouds
1.Place spherical shells
spherical shells
2.Compute Isunb(t)F(a) b(t)
3.Map shadow texture
V
4.Draw shells with additive blending
35Examples
rendering 10 sec
simulation 0.3 sec
image size 640x480
voxel size 256x256x10
(PentiumIII 733Mhz, NVIDIA GeForce256)
36Examples
shafts of light (daytime)
shafts of light (evening)
rendering 15 sec
simulation 0.5 sec
image size 640x480
voxel size 256x256x20
(PentiumIII 733Mhz, NVIDIA GeForce256)
37Example Animation (Video)
38Conclusion
Simulation using 3D cellular automaton
- fast simulation by Boolean operations
Realistic rendering of clouds
- two-pass method using billboards for colors
and shadows
- virtual spherical shells for shafts of light
39Future Work
Further acceleration for real-time animation
- hierachical representation of voxels
Creating various kinds of clouds
- taking into account effects under terrain
- handling multiple wind direction, wind field