SCA 2006. Vortex Fluid Structure For Smoke Control. Alexis Angelidis (1) Fabrice Neyret (2) Karan Singh (1) Derek Nowrouzezahrai (1) (1): DGP, U of Toronto (2): Evasion-GRAVIR / IMAG-INRIA. Motivation. Fluid Animation: smoke , clouds, fire, explosion, splashes, sea…

Download Presentation

Vortex Fluid Structure For Smoke Control

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

Motivation • 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 ]

Motivation [Treuille et al.03],[McNamara et al.04],[Fattal et al.04] Most related work • Density field given at keyframes • Solver between frames What we want • No hand-drawn smoke • Natural control key2 key1 [McNamara et al.04]

Background [AN05] Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian ‘‘Chart of methods for numerical fluid simulation’’

vorticity Background Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian 3D field velocity v Rotation in rad s-1 translation in m s-1

vorticity Background Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian velocity v Curl

vorticity Background Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian velocity v BIOT-SAVART

Background Velocity Vorticity 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

Background Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian Eulerian Lagrangian in grid at particle

Background Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian No diffusion Implicit incompressibility compact Unbounded … Easy boundary conditions Easy extra differential eqn …

VORTICITY EQUATION Background Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian Vorticity: Vortex particle advected, vector stretched vorticity moves as material lines

w Background Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian Vorticity: Our primitive = curves = tangent

Background Velocity Vorticity moving quantity representation popular Eulerian our method Lagrangian Density: Dedicated particles - passive floaters - for rendering - only where smoke is Density: a quantity at nodes

Lagrangian primitives • Curves carry the vorticity • Each local vortex induces a weighted rotation

Lagrangian primitives • Curves carry the vorticity • Each local vortex induces a weighted rotation

Method 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

Method 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

Method 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

Contributions • A new representation of vortex curves Compact, stable, controlable motion primitives • Controls of the motion primitives • Fast ‘‘noise’’ for fake turbulence details

Contributions • A new representation of vortex curves Compact, stable, controlable motion primitives • Controls of the motion primitives • Fast ‘‘noise’’ for fake turbulence details

… New 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 <cx cy cz>1..N Synthesis Advection Analysis

… New 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 <cx cy cz>1..N Synthesis Advection Analysis

… New 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 <cx cy cz>1..N Synthesis Advection Analysis

… New 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 <cx cy cz>1..N Synthesis Advection Analysis

ez ey … o ex Meaning of description • ez points towards moving direction • Frequencies cx cy cz give texture to the flow • Thickness

Contributions • A new representation of vortex curves Compact, stable, controlable motion primitives • Controls of the motion primitives • Fast ‘‘noise’’ for fake turbulence details

+ without with ez ey <cx cy cz>1..N … o ex Control • direction: align ez with tangent • Targets: • Twisting smoke: spin vortices around ez • Edit, delete … • Modulate cx cy cz to texturethe flow

+ without with ez ey <cx cy cz>1..N … o ex Control • direction: align ez with tangent • Targets: • Twisting smoke: spin vortices around ez • Edit, delete … • Modulate cx cy cz to texturethe flow

+ without with ez ey <cx cy cz>1..N … o ex Control • direction: align ez with tangent • Targets: • Twisting smoke: spin vortices around ez • Edit, delete … • Modulate cx cy cz to texturethe flow

How to control • One cannot just translate the curves: the smoke does not follow • Solution: paddle(servoing ) ez ey o ex

Contributions • A new representation of vortex curves Compact, stable, controlable motion primitives • Controls of the motion primitives • Fast ‘‘noise’’ for 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 Noise: 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 Noise: 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 Noise: fake turbulence details

Contributions • 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

Octree cache • Velocity computed at octree leaves + inbetween interpolation • Velocity computed at every smoke particle &every vorticity curve sample

Octree cache • Velocity computed at octree leaves + inbetween interpolation • Velocity computed at every smoke particle &every vorticity curve sample

l n e Rendering • Thin smoke behaves like a surface [ William Brennan ]

Results - video fpsForest fire Genie&lamp Walkthrough Fly Modeler quality5 12 5 18 Final rendering quality0.54 0.2 1. 0.37

Conclusion 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