Animation%20of%20Fluids - PowerPoint PPT Presentation

About This Presentation
Title:

Animation%20of%20Fluids

Description:

Shrek. Antz. Terminator 3. Many others... Games. Engineering... Fluid Dynamics (with as little math as possible) What do we mean by Fluid' ... – PowerPoint PPT presentation

Number of Views:123
Avg rating:3.0/5.0
Slides: 48
Provided by: jungleCps
Category:

less

Transcript and Presenter's Notes

Title: Animation%20of%20Fluids


1
Animation of Fluids
2
Animating Fluid is Hard
  • Too complex to animate by hand
  • Surface is changing very quickly
  • Lots of small details
  • In short, a nightmare!
  • Need automaticsimulations

3
Ad-Hoc Methods
  • Some simple algorithmsexist for special cases
  • Mostly waves
  • What about water glass?
  • Too much work to comeup with empirical
    algorithmsfor each case

4
Physically-Based Approach
  • Look to Fluid Dynamics
  • Long history. Back to Newton
  • Equations that describe fluid motion
  • Use numerical methods to approximate fluid
    equations, simulating fluid motion
  • Like mass-spring systems

5
Current State-of-the-art in CG
  • Marker-And-Cell (MAC) Method
  • fedkiw_fluid\glass00.avi
  • fedkiw_fluid\splash-640.avi
  • Smoothed Particle Hydrodynamics (SPH)
  • muller_particles\sph.avi
  • muller_particles\pool.avi

6
Applications
  • Mostly Hollywood
  • Shrek
  • Antz
  • Terminator 3
  • Many others
  • Games
  • Engineering

7
Fluid Dynamics
  • (with as little math as possible)

8
What do we mean by Fluid?
  • liquids or gasses
  • Mathematically
  • A vector field u (represents the fluid velocity)
  • A scalar field p (represents the fluid pressure)
  • fluid density (d) and fluid viscosity (v)

9
Vector Fields
  • 2D Scalar function
  • f(x,y) z
  • z is a scalar value
  • 2D Vector function
  • u(x,y) v
  • v is a vector value
  • v (x, y)
  • The set of valuesu(x,y) v is called avector
    field

10
Fluid Velocity Vector Field
  • Can model a fluid as a vector field u(x,y)
  • u is the velocity of the fluid at (x,y)
  • Velocity is different at each point in fluid!
  • Need to compute change in vector field

11
Conceptual Leap
  • Particle Simulation
  • Track particle positions x (x,y)
  • Numerically Integrate change in position
  • Fluid Simulation
  • Track fluid velocities u (u,v) atall points x
    in some fluid volume D
  • Numerically Integrate change in velocity

12
Equations of Fluid Dynamics
  • Navier-Stokes Equation
  • Non-linear Partial Differential Equation
  • Models fluid transport
  • Derived from Newtons second law
  • conservation of momentum all the forces go
    somewhere
  • Mass-Conservation condition
  • If we have a liter of water at the beginning of
    the solution, we have a liter at the end

13
Change in Velocity
  • Derivative of velocity with respect to time
  • Change in velocity, or acceleration
  • So this equation models acceleration of fluids

14
Advection Term
  • Advection term
  • Force exerted on a particleof fluid by the other
    particlesof fluid surrounding it
  • How the fluid pushes itself around

15
Particle AdvectionVideo
16
Diffusion Term
  • Viscosity constant controls velocity
    diffusion
  • Essentially, this term describes how fluid motion
    is damped
  • Highly viscous fluids stick together
  • Like maple syrup
  • Low-viscosity fluids flow freely
  • Gasses have low viscosity

17
Weather Advection Diffusion
  • Jet-Stream

18
Pressure Term
  • Pressure follows a diffusion process
  • Fluid moves from high-pressureareas to
    low-pressure areas
  • Moving velocity
  • So fluid moves in direction oflargest change in
    pressure
  • This direction is the gradient

Time
19
Weather Pressure
  • Fronts are the boundaries between regions of
    air with different pressure
  • High Pressure Zones will diffuse into Low
    Pressure Zones

20
Fluid Example
  • Fast moving fluid is pulled towards
    slower-moving fluid

21
Body Force
  • Body force term represents external forces that
    act on the fluid
  • Gravity
  • Wind
  • Etc

22
Summary
  • And 1 liter 1 liter constraint
  • Need to simulate these equations

23
Intermission
  • Smoke
  • fedkiw_octree\smoke_octree.avi
  • Fire
  • fedkiw_fire\flammable.avi

24
Implementation Overview
25
Fluid Representation
  • Want to simulate motion of some fluid body
  • fluid is represented by a vector field
  • Two problems
  • Need to compute change invector field (using
    Navier-Stokes equation)
  • Need to track fluid position

26
Solution Discretization
  • Create regular grid

27
Solution Discretization
  • Create regular grid
  • Discretize fluid into grid cells

28
Solution Discretization
  • Create regular grid
  • Discretize fluid into grid cells
  • Track single velocityvector in eachgrid cell

29
Simulation Step
  • Solve Navier-Stokes equation for each grid cell
    to compute change in velocity

Body Force is just like mass-spring systems
non-linear Advection term is difficult. Can
finite-difference, but is not robust
finite-difference Diffusion and Pressure terms
are linear systems of equations
30
Free Surface Tracking with Marker Particles
  • Want higher-resolution surface for rendering
  • Add a bunch of particles
  • Passively Advect thembased on fluid velocity

31
So the rest is easy, right?
  • No
  • Still have to enforce mass-conservation
    constaint
  • Standard equation does not take boundary
    conditions into account
  • Boundary conditions are things like walls,
    fluid/air boundaries, rubber duckies, and so on
  • Have to hack the equationsthis is hard
  • Numerical Stability is elusive

32
Intermission 2
  • Melting
  • carlson_melting\bunnyside.mpg
  • Rigid Body Fluid
  • carlson_rigidfluid\rigidfluid.avi

33
Problems with Fluid Simulation
34
Surface Resolution
35
Weird Behavior.
36
Water or Vegetable Oil?
  • fedkiw_fluid\glass00.avi
  • Oh, and its very, very slow
  • 7 minutes per frame forwater glass

37
Hard to Control
  • Animators want to control fluid behavior
  • Fluid simulation has a lot of free variables
  • There has been limited success so far

38
Numerical Stability
39
Maya Fluid Effects
40
What does fluid effects support?
  • Naver-Stokes-based Fluids
  • Smoke
  • Clouds
  • Explosions
  • Fire
  • Goo type-stuff
  • Ad-Hoc / Mass-Spring fluids
  • Oceans
  • Ponds

41
Fluid Effects Algorithms
  • Unconditionally Stable Navier-Stokes simulation
  • Means they never explode, even with large
    timesteps
  • Jos Stam, Stable Fluids, SIGGRAPH 99
  • Do not preserve volume very well
  • Ok for smoke
  • Problematic for water glass
  • Gets worse w/ larger timestep

42
Maya Smoke
  • Smoke demo

43
Maya Fire
  • Looks like smoke

44
More Fluid Effects Demos
45
Maya Ocean
  • 2D height field no crashing waves
  • Can attach bouyant objects

46
Maya Pond
  • 2D height field
  • No splashing
  • Mass-spring system
  • Bouys, Boats, Wakes
  • Can run in real-time

47
Fin
  • (questions?)
Write a Comment
User Comments (0)
About PowerShow.com