Title: Vortex%20Fluid%20Structure%20For%20Smoke%20Control
1Vortex Fluid StructureFor Smoke Control
SCA 2006
- Alexis Angelidis (1)
- Fabrice Neyret (2)
- Karan Singh (1)
- Derek Nowrouzezahrai (1)
- (1) DGP, U of Toronto
- (2) Evasion-GRAVIR / IMAG-INRIA
2Motivation
- Fluid Animation smoke, clouds, fire, explosion,
splashes, sea - Simulation vs Animation
Areté Entertainment, inc. 96
LOTR
3Motivation
- Fluid Animation smoke, clouds, fire, explosion,
splashes, sea - Simulation vs Animation
- Approaches to control
- Phenomenological, limited
- Fake forces
- Control by keyframing shapes
Areté Entertainment, inc. 96
LotR
4Motivation
- Most related work
- Density field given at keyframes
- Solver between frames
- What we want
- No hand-drawn smoke
- Natural control
Treuille et al.03,McNamara et al.04,Fattal
et al.04
key2
key1
McNamara et al.04
5 Background AN05
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
Chart of methods for numerical fluid
simulation
6Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
velocity v
3D field
Rotation in rad s-1
translation in m s-1
7Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
velocity v
Curl
8Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
velocity v
BIOT-SAVART
9Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
Dynamics
Eulerian
The flow modifies quantities held at static
positions
Lagrangian
The flow carries floaters that hold the quantities
10Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
Lagrangian
Eulerian
at particle
in grid
11Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
NAVIER-STOKES
( incompressible )
12Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
13Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
VORTICITY EQUATION
( inviscid )
14Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
No diffusion Implicit incompressibility
compact Unbounded
Easy boundary conditions Easy extra differential
eqn
15Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
Vorticity Vortex particle advected, vector
stretched
vorticity moves as material lines
16Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
Vorticity Our primitive curves
tangent
17Background
Vorticity
Velocity
moving quantity
representation
popular
Eulerian
our method
Lagrangian
Density Dedicated particles - passive
floaters - for rendering - only where smoke
is
Density a quantity at nodes
18Lagrangian primitives
- Curves carry the vorticity
- Each local vortex induces a weighted rotation
19Lagrangian primitives
- Curves carry the vorticity
- Each local vortex induces a weighted rotation
20Method of simulation
- Vortex particles (for motion) organized
as curves. tangent - Smoke particles (for visualisation)
- Curves carry vortices
- Vortices induce a velocity field
- velocity field deforms curves smoke
- At every step
- Advect the curves
- Stretch
- Advect the smoke
21Method of simulation
- Vortex particles (for motion) organized
as curves. tangent - Smoke particles (for visualisation)
- Curves carry vortices
- Vortices induce a velocity field
- velocity field deforms curves smoke
- At every step
- Advect the curves
- Stretch
- Advect the smoke
22Method of simulation
- Vortex particles (for motion) organized
as curves. tangent - Smoke particles (for visualisation)
- Curves carry vortices
- Vortices induce a velocity field
- velocity field deforms curves smoke
- At every step
- Advect the curves
- Stretch
- Advect the smoke
23Contributions
- A new representation of vortex curves
- Compact, stable, controlable motion primitives
- Controls of the motion primitives
- Fast noise for fake turbulence details
24Contributions
- A new representation of vortex curves
- Compact, stable, controlable motion primitives
- Controls of the motion primitives
- Fast noise for fake turbulence details
25Deformation of curves previous approach AN05
If not refined undersampling
Polygon
If refined too complex
Strategy to control complexity
26New representation
- Solution harmonic analysis of coordinates
x in y z
a pair of coefficients for each harmonic
- Reference frame best ellipsoid
Complexity control
- Curves described by
- Frame o ex ey ez
- Frequencies ltcx cy czgt1..N
Synthesis Advection Analysis
27New representation
- Solution harmonic analysis of coordinates
x in y z
a pair of coefficients for each harmonic
ez
ey
- Reference frame best ellipsoid
o
ex
Complexity control
- Curves described by
- Frame o ex ey ez
- Frequencies ltcx cy czgt1..N
Synthesis Advection Analysis
28New representation
- Solution harmonic analysis of coordinates
x in y z
a pair of coefficients for each harmonic
ez
ey
- Reference frame best ellipsoid
o
ex
Complexity control
- Curves described by
- Frame o ex ey ez
- Frequencies ltcx cy czgt1..N
Synthesis Advection Analysis
29New representation
- Solution harmonic analysis of coordinates
x in y z
a pair of coefficients for each harmonic
ez
ey
- Reference frame best ellipsoid
o
ex
Complexity control
- Curves described by
- Frame o ex ey ez
- Frequencies ltcx cy czgt1..N
Synthesis Advection Analysis
30Meaning of description
- ez points towards moving direction
- Frequencies cx cy cz give texture to the flow
31Video representation
32Contributions
- A new representation of vortex curves
- Compact, stable, controlable motion primitives
- Controls of the motion primitives
- Fast noise for fake turbulence details
33Control
- direction align ez with tangent
- Targets
- Twisting smoke spin vortices around ez
- Edit, delete
- Modulate cx cy cz to texture the flow
34Control
- direction align ez with tangent
- Targets
- Twisting smoke spin vortices around ez
- Edit, delete
- Modulate cx cy cz to texture the flow
35Control
- direction align ez with tangent
- Targets
- Twisting smoke spin vortices around ez
- Edit, delete
- Modulate cx cy cz to texture the flow
36How to control
- One cannot just translate the curves the smoke
does not follow
- Solution paddle (servoing )
ez
ey
o
ex
37Video control
38Contributions
- A new representation of vortex curves
- Compact, stable, controlable motion primitives
- Controls of the motion primitives
- Fast noise for fake turbulence details
39Noise fake turbulence details
- AN05
- noise extra vortex particles
- advected in the flow, no stretch
- Costly (needs a lot)
- Source, sampling
- Tiled vortex noise
- noise layer
- separate simulation, in toroidal space
- Tiled in space
- Additional evolving velocity field
40Noise fake turbulence details
- AN05
- noise extra vortex particles
- advected in the flow, no stretch
- Costly (needs a lot)
- Source, sampling
- Tiled vortex noise
- noise layer
- separate simulation, in toroidal space
- Tiled in space
- Additional evolving velocity field
41Noise fake turbulence details
- AN05
- noise extra vortex particles
- advected in the flow, no stretch
- Costly (needs a lot)
- Source, sampling
- Tiled vortex noise
- noise layer
- separate simulation, in toroidal space
- Tiled in space
- Additional evolving velocity field
42Video noise
43Contributions
- A new representation of vortex curves
- Compact, stable, controlable motion primitives
- Controls of the motion primitives
- Fast noise for fake turbulence details
- Velocity cache, rendering
44Octree cache
- Velocity computed at every smoke particle
every vorticity curve sample
- Velocity computed at octree leaves inbetween
interpolation
45Octree cache
- Velocity computed at every smoke particle
every vorticity curve sample
- Velocity computed at octree leaves inbetween
interpolation
46Rendering
- Thick smoke plain particles
- Thin smoke adaptive particles AN05
- accumulate stretching
47Rendering
- Thin smoke behaves like a surface
William Brennan
48Results - video
fps Forest fire Genielamp
Walkthrough Fly
Modeler quality 5 12
5 18 Final rendering
quality 0.54 0.2 1.
0.37
49Conclusion
- Vorticity filaments
- Compact, high-res, fast
- Good handles to manipulate a fluid
- Can be manipulated interactively or post-
- Future work
- Split/merge
- High-quality collisions
- 2-phase, buoyancy,
Coupling with grids
50Thanks!
51Video collisions
52Video thickness
53Rendering
- Thin smoke behaves like a surface
Diffuse off
Diffuse on
54Rendering
- Thin smoke behaves like a surface
55Lagrangian primitives
- Curves carry the vorticity
- Each vortex induces a weighted rotation
Effect of one vortex on ashape
56Control currents
ez
t
L
L
57Checkpoint