You are on page 1of 23

Realistic Animation of Liquids

Realistic Animation of Liquids


Aims
- Unify existing computer graphics techniques - Extends more complex behavior

Previous techniques
- Not possible reflection, refraction, diffraction, rotational effects (eddies, vorticity, splashing)

- Non physics-based Approximation -> Kass,Miller -> Chen,Lobo


- Reason of Failure : In both case, Only Surface, Not Pressure

- Impossible submerged obstacles


- Lack of control

Paper's Aims

- Realism : NavierStokes equation - Usability : Not special case, Attention on surface - Controlling : Inflow, outflow, Pressure not natural way

Procedure

-NavierStokes equation -Liquid free surface -Height field equation -Lagrange equations of motion : bouyant object -Methods for control -Examples

NAVIERSTOKES EQUATIONS

NS EQUATIONS : Discretization

Location of staggered velocity components on a typical cell (i,j,k)

Continuity Equation - Correctness


Continuity Equation

Pressure Correction

Continuity Equation - Correctness(2)


Update Velocity

Update Pressure

Boundary Equations

Stationary obstacle u0 = 0

nonslip obstacle : w0 = - w1 Free-slip obstacle : w0 = w1


Inflow & Outflow Inflow : Required velocity Outflow : v in adjacent cell Free Surface

Tracking Fluid Position


smooth and accurate representation adjust contents of mesh over time higher than mesh resolution 1. Marker Particles 2. Free Surface Particles 3. Height Field

Tracking Fluid Position Marker Particles


Add particle at inflow boundary Area Weighing interpolation Cell configuration - No Particle : Empty - Particle & Adjacent Empty : Surface - Full

Tracking Fluid Position Marker Particles


Example : Frames from two-dimensional animations making use of marker particles. A jet of water splashes into a concrete tank (a)(d).

Tracking Fluid Position Free Surface Particles


Every fluid cell -> boundary between fluid and obstacle or air

Surface must be continuous : Removing & Adding particle


Cell configuration : Region Growing algorithms

Tracking Fluid Position Height field


Puddle, river, ocean : No complex geometry Each Vertical column of Cell : Has Surface Height(Defined along Y axis)

Cell configuration : Set Empty, Surface and Full according to Cell Height

Sometimes Combined with Marker Particles

Buoyancy
Discretization : Rigid dynamic object -> Set of nodes n_i Force acting on the node

Generalized Lagrange equation of Motion

f_q : total force & torque g_q : coriolis & centrifugal force There are Assumptions or Limits

q : degree of freedom

Summary of the Navier-Stokes Algorithms


1. Define obstacle and starting fluid configuration, and place dynamic object 2. Set initial pressure and velocity conditions 3. Determine cell contents depending on the method used to track the surface 4. Set up boundary conditions for the free surface and obstacle cells 5. Compute for all Full cells

6. Perform the pressure iteration for all Full cell 7. Recalulate boundary velocities for Surface cells 8. Update the position of the surface and objects. 9. Go to step 3

Control
Methods for controlling the fluid surface 1. Inflow and Outflow velocities : eg. broken dam 2. Surface Pressure History Natural way (Pressure to Surface) : eg. wind effect In two dimensions, interesting wave can be developed using the forcing function

Examples

Examples
Case : Geometry is rotationally symmetric

Examples
Moon night cove

Examples

Examples

You might also like