Transcript PowerPoint

Depicting Fire and Other Gaseous
Phenomena Using Diffusion Processes
Jos Stam and Eugene Fiume
Dept. of CS, University of Toronto
Presentation ©2001
Brenden Schubert
Modeling Gasses
• Texture Parameterization
– Vary parameters to get animation
 Empirical
 Hard to relate parameters to physical model
• Particle System
– User-defined wind field displaces particles each
frame
 More correct (think molecular)
 Computationally intense
“warped blobbies”
• Start with a particle system
• Use blobs instead of particles
– Replace lots of particles with single blob
• Wind field advects and diffuses blobs
– Key: diffusion is non-uniform
Diffusion Processes
• Toronto must require CS majors to take
Differential Equations too
• Is applied to both particles (blobs), and
temperature
• Simple enough to be understood by animators
with “limited knowledge of physics”
– What could be more simple than milk dissolving
in a coffee cup..?
The Diffusion Equation
• u = wind field
•
•
•
•
•
q = scalar field (density of the gas)
s= gradient operator
k q= diffusion coefficient (like viscosity)
Sq = source field (producing gas)
Lq = sink field (sucking gas in)
The Diffusion Equation
• Diffusion depends on the (square of) the gradient
of the scalar field * k q
• Advection depends on the gradient of the scalar
field * u
• Sources and sinks are like adding constant (over
time) fields to the wind field
• Apply to both gas “density” and temperature
There’s no gluDiffEQ() function
• Approximate by convolving the exact
solution with a smoothing function
• The Smoothing Function
– Modified Gaussian: incorporates
• How much the blob has changed from original
• h = function of the wind field
There’s no gluDiffEQ() function
• Approximate by convolving the exact
solution with a smoothing function
• The Smoothing Function
– Modified Gaussian: incorporates
• s = original blob attributes
• h = function of the wind field
Light and Gas
• Internally produced light
– Emission spectra known
– Proportional to T4
• Externally produced light
– Scattered:
• albedo (W) contstant
• Phase function p
– Absorbed
• (1 – W) * absorption spectra
Shooting Operations
• Light sources are a field
• Discretize environment into patches
• Repeatedly shoot light from patch to patch,
blob to patch, and patch to blob
• Eventually will converge to an intensity
field
Fire
• Why I picked this paper (you can’t burn stuff with
differential equations)
• The key: Temperature field
– Define an activation temperature Ta
– When T reaches Ta…
– Render flames
• Smoke
– When gas cools below Ts
• render smoke particle
Conclusions
• Warping blobs is good
• Convolution must be slow
– “typical resolutions for our
simulations were 20 x 20”
– Video res frame takes 20 min on SGI Indigo 2
• Manipulation of wind field is key to usability
• Fire
– still requires lots of tweaking
– good movement, but coloration not addressed