Presentation is loading. Please wait.

Presentation is loading. Please wait.

Vortex Fluid Structure For Smoke Control SCA 2006 Alexis Angelidis Alexis Angelidis (1) Fabrice Neyret Fabrice Neyret (2) Karan Singh Karan Singh (1) Derek.

Similar presentations


Presentation on theme: "Vortex Fluid Structure For Smoke Control SCA 2006 Alexis Angelidis Alexis Angelidis (1) Fabrice Neyret Fabrice Neyret (2) Karan Singh Karan Singh (1) Derek."— Presentation transcript:

1 Vortex Fluid Structure For Smoke Control SCA 2006 Alexis Angelidis Alexis Angelidis (1) Fabrice Neyret Fabrice Neyret (2) Karan Singh Karan Singh (1) Derek Nowrouzezahrai Derek Nowrouzezahrai (1) (1): DGP, U of Toronto (2): Evasion-GRAVIR / IMAG-INRIA

2 Motivation Fluid Animation: smoke, clouds, fire, explosion, splashes, sea…Fluid Animation: smoke, clouds, fire, explosion, splashes, sea… Simulation vs AnimationSimulation vs Animation [ Areté Entertainment, inc. 96] [ LOTR ]

3 Motivation Fluid Animation: smoke, clouds, fire, explosion, splashes, sea…Fluid Animation: smoke, clouds, fire, explosion, splashes, sea… Simulation vs AnimationSimulation vs Animation Approaches to control:Approaches to control: –Phenomenological, limited –Fake forces –Control by keyframing ‘shapes’ [ Areté Entertainment, inc. 96] [ LotR ]

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

5 Background [AN05] Background [AN05] Eulerian VorticityVelocity Lagrangian movingquantity representation ourmethod ‘‘Chart of methods for numerical fluid simulation’’ popular

6 Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod representation velocity v translation in m s -1 Rotation in rad s -1 vorticityvorticitypopular 3Dfield

7 Curl Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod representation velocity v vorticityvorticitypopular

8 BIOT-SAVART Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod representation vorticityvorticitypopular

9 Background Eulerian VorticityVelocity Lagrangian movingquantity representation ourmethod Eulerian Lagrangian The flow modifies quantities held at static positions The flow carries floaters that hold the quantities Dynamics : popular

10 Background Eulerian VorticityVelocity Lagrangian movingquantity representation ourmethod LagrangianLagrangianEulerianEulerian at particle in grid popular

11 Background Eulerian VorticityVelocity Lagrangian movingquantity popular ourmethod NAVIER-STOKES ( incompressible ) representation

12 Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod representation popular

13 Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod VORTICITY EQUATION representation ( inviscid ) popular

14 Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod representation popular Easy boundary conditions Easy extra differential eqn … No diffusion Implicit incompressibility compact compactUnbounded…

15 Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod VORTICITY EQUATION representation popular Vorticity: Vortex particle advected, vector stretched vorticity moves as material lines

16 Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod representation popular  Vorticity: Our primitive = curves = tangent = tangent

17 Background Eulerian VorticityVelocity Lagrangian movingquantity ourmethod representation Density: a quantity at nodes a quantity at nodes Density: Dedicated particles Dedicated particles - passive floaters - passive floaters - for rendering - for rendering - only where smoke is - only where smoke is popular

18 Lagrangian primitives Curves carry the vorticityCurves carry the vorticity Each local vortex induces a weighted rotationEach local vortex induces a weighted rotation

19 Lagrangian primitives Curves carry the vorticityCurves carry the vorticity Each local vortex induces a weighted rotationEach local vortex induces a weighted rotation

20 Method of simulation Vortex particles (for motion) organized as curves. = tangentVortex particles (for motion) organized as curves. = tangent Smoke particles (for visualisation)Smoke particles (for visualisation) Curves carry vorticesCurves carry vortices Vortices induce a velocity fieldVortices induce a velocity field velocity field deforms curves & smokevelocity field deforms curves & smoke At every step: Advect the curvesAdvect the curves StretchStretch Advect the smokeAdvect the smoke

21 Method of simulation Vortex particles (for motion) organized as curves. = tangentVortex particles (for motion) organized as curves. = tangent Smoke particles (for visualisation)Smoke particles (for visualisation) Curves carry vorticesCurves carry vortices Vortices induce a velocity fieldVortices induce a velocity field velocity field deforms curves & smokevelocity field deforms curves & smoke At every step: Advect the curvesAdvect the curves StretchStretch Advect the smokeAdvect the smoke

22 Method of simulation Vortex particles (for motion) organized as curves. = tangentVortex particles (for motion) organized as curves. = tangent Smoke particles (for visualisation)Smoke particles (for visualisation) Curves carry vorticesCurves carry vortices Vortices induce a velocity fieldVortices induce a velocity field velocity field deforms curves & smokevelocity field deforms curves & smoke At every step: Advect the curvesAdvect the curves StretchStretch Advect the smokeAdvect the smoke

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

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

25 Deformation of curves previous approach [AN05] If refined: too complex Polygon If not refined: undersampling Strategy to control complexity

26 New representation Solution: harmonic analysis of coordinatesSolution: harmonic analysis of coordinates x = in y z Reference frame: best ellipsoidReference frame: best ellipsoid a pair of coefficients for each harmonic Curves described by :Curves described by : –Frame o e x e y e z –Frequencies 1..N SynthesisAdvectionAnalysis Complexity control …

27 New representation Solution: harmonic analysis of coordinatesSolution: harmonic analysis of coordinates x = in y z Reference frame: best ellipsoidReference frame: best ellipsoid a pair of coefficients for each harmonic Curves described by :Curves described by : –Frame o e x e y e z –Frequencies 1..N SynthesisAdvectionAnalysis Complexity control exexexex eyeyeyey ezezezez o …

28 New representation Solution: harmonic analysis of coordinatesSolution: harmonic analysis of coordinates x = in y z Reference frame: best ellipsoidReference frame: best ellipsoid a pair of coefficients for each harmonic Curves described by :Curves described by : –Frame o e x e y e z –Frequencies 1..N SynthesisAdvectionAnalysis Complexity control exexexex eyeyeyey ezezezez o …

29 New representation Solution: harmonic analysis of coordinatesSolution: harmonic analysis of coordinates x = in y z Reference frame: best ellipsoidReference frame: best ellipsoid a pair of coefficients for each harmonic Curves described by :Curves described by : –Frame o e x e y e z –Frequencies 1..N SynthesisAdvectionAnalysis Complexity control exexexex eyeyeyey ezezezez o …

30 Meaning of description e z points towards moving direction e z points towards moving direction exexexex eyeyeyey ezezezezo Frequencies c x c y c z give texture to the flowFrequencies c x c y c z give texture to the flow … ThicknessThickness

31 Video: representation

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

33 direction: align e z with tangentdirection: align e z with tangent Targets:Targets: Twisting smoke: spin vortices around e zTwisting smoke: spin vortices around e z Edit, delete …Edit, delete … Modulate c x c y c z to texture the flowModulate c x c y c z to texture the flow Control without with exexexex eyeyeyey ezezezezo … 1..N +

34 direction: align e z with tangentdirection: align e z with tangent Targets:Targets: Twisting smoke: spin vortices around e zTwisting smoke: spin vortices around e z Edit, delete …Edit, delete … Modulate c x c y c z to texture the flowModulate c x c y c z to texture the flow Control without with exexexex eyeyeyey ezezezezo … 1..N +

35 direction: align e z with tangentdirection: align e z with tangent Targets:Targets: Twisting smoke: spin vortices around e zTwisting smoke: spin vortices around e z Edit, delete …Edit, delete … Modulate c x c y c z to texture the flowModulate c x c y c z to texture the flow Control without with exexexex eyeyeyey ezezezezo … 1..N +

36 How to control One cannot just translate the curves: the smoke does not followOne cannot just translate the curves: the smoke does not follow exexexex eyeyeyey ezezezez o Solution: paddle (servoing )Solution: paddle (servoing )

37 Video: control

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

39 [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

40 [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

41 [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

42 Video: noise

43 A new representation of vortex curvesA new representation of vortex curves Compact, stable, controlable motion primitives Controls of the motion primitivesControls of the motion primitives Fast ‘‘noise’’ for fake turbulence detailsFast ‘‘noise’’ for fake turbulence details Velocity cache, renderingVelocity cache, rendering Contributions

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

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

46 Rendering Thick smoke: plain particlesThick smoke: plain particles Thin smoke: adaptive particles [AN05]Thin smoke: adaptive particles [AN05] –accumulate stretching

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

48 Results - video fps Forest fire Genie&lamp Walkthrough Fly Modeler quality 5 12 5 18 Final rendering quality 0.54 0.2 1. 0.37

49 Vorticity filaments: Compact, high-res, fastCompact, high-res, fast Good handles to manipulate a fluidGood handles to manipulate a fluid Can be manipulated interactively or post-Can be manipulated interactively or post- Future work: Split/mergeSplit/merge High-quality collisionsHigh-quality collisions 2-phase, buoyancy, …2-phase, buoyancy, … Conclusion Coupling with grids

50 Thanks!

51 Video: collisions

52 Video: thickness

53 Rendering Thin smoke behaves like a surfaceThin smoke behaves like a surface Diffuse off Diffuse on e n l

54 Rendering Thin smoke behaves like a surfaceThin smoke behaves like a surface

55 Lagrangian primitives Curves carry the vorticityCurves carry the vorticity Each vortex induces a weighted rotationEach vortex induces a weighted rotation Effect of one vortex on a shape :

56 Control currents Without controlWithout controlWith control L ezezezez L 

57 Checkpoint With controlWith control


Download ppt "Vortex Fluid Structure For Smoke Control SCA 2006 Alexis Angelidis Alexis Angelidis (1) Fabrice Neyret Fabrice Neyret (2) Karan Singh Karan Singh (1) Derek."

Similar presentations


Ads by Google