Taming a Wild River Jeff Lander Darwin 3D

Slides:



Advertisements
Similar presentations
Stable Fluids A paper by Jos Stam.
Advertisements

My First Fluid Project Ryan Schmidt. Outline MAC Method How far did I get? What went wrong? Future Work.
November 18 AP Physics.
Realistic Simulation and Rendering of Smoke CSE Class Project Presentation Oleksiy Busaryev TexPoint fonts used in EMF. Read the TexPoint manual.
Simulation of Fluids using the Navier-Stokes Equations Kartik Ramakrishnan.
Computer-Generated Watercolor
Continuity Equation. Continuity Equation Continuity Equation Net outflow in x direction.
Mode-Splitting for Highly Detail, Interactive Liquid Simulation H. Cords University of Rostock Presenter: Truong Xuan Quang.
1 Modeling Highly- Deformable Liquid Chih-Wei Chiu Computer Graphics and Geometry Modeling Laboratory National Chiao Tung University June 25, 2002 Advisors:
An Introduction to Multiscale Modeling Scientific Computing and Numerical Analysis Seminar CAAM 699.
1Notes  Textbook: matchmove 6.7.2, B.9. 2 Match Move  For combining CG effects with real footage, need to match synthetic camera to real camera: “matchmove”
Particle-based fluid simulation for interactive applications
University of North Carolina - Chapel Hill Fluid & Rigid Body Interaction Comp Physical Modeling Craig Bennetts April 25, 2006 Comp Physical.
Continuum Crowds Adrien Treuille, Siggraph 王上文.
Modeling Fluid Phenomena -Vinay Bondhugula (25 th & 27 th April 2006)
Visual Simulation of Smoke SIGGRAPH’01 Ronald Fedkiw, Jos Stam and Henrik Wann Jensen Stanford University & Alias|wavefront.
Fluid mechanics 3.1 – key points
Modelling Realistic Water & Fire Sérgio Leal Socrates/Erasmus student at: AK Computer Graphics Institute for Computer Graphics and Vision Technical University.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Intro to Computational Fluid Dynamics Brandon Lloyd COMP 259 April 16, 2003 Image courtesy of Prof. A.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Introduction to Modeling Fluid Dynamics 1.
Fluid Simulation for Graphics
Modeling, Simulating and Rendering Fluids Thanks to Ron Fediw et al, Jos Stam, Henrik Jensen, Ryan.
Fluid Simulation for Computer Animation Greg Turk College of Computing and GVU Center Georgia Institute of Technology.
Simulation and Animation
FUNDAMENTAL EQUATIONS, CONCEPTS AND IMPLEMENTATION
Motivation  Movie  Game  Engineering Introduction  Ideally  Looks good  Fast simulation  Looks good?  Look plausible  Doesn’t need to be exactly.
Conservation Laws for Continua
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Fluids.
Fluid Animation CSE 3541 Matt Boggus. Procedural approximations – Heightfield fluids Mathematical background – Navier-Stokes equation Computational models.
Fast Hydraulic Erosion Simulation and Visualization on GPU
R. Field 10/29/2013 University of Florida PHY 2053Page 1 Ideal Fluids in Motion Bernoulli’s Equation: The Equation of Continuity: Steady Flow, Incompressible.
Flood Routing 2 Review of Energy Conservation Energy Grade Line Gradually Varied Flows, Head Loss Runge-Kutta Routing.
Basic dynamics  The equations of motion and continuity Scaling Hydrostatic relation Boussinesq approximation  Geostrophic balance in ocean’s interior.
Animation of Fluids.
COMPUTATIONAL FLUID DYNAMICS IN REAL-TIME An Introduction to Simulation and Animation of Liquids and Gases.
A Fast Simulation Method Using Overlapping Grids for Interactions between Smoke and Rigid Objects Yoshinori Dobashi (Hokkaido University) Tsuyoshi Yamamoto.
Smoothed Particle Hydrodynamics (SPH) Fluid dynamics The fluid is represented by a particle system Some particle properties are determined by taking an.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
1 Discretization of Fluid Models (Navier Stokes) Dr. Farzad Ismail School of Aerospace and Mechanical Engineering Universiti Sains Malaysia Nibong Tebal.
METR February Review State variables: p, ρ, T Pressure Temperature Equation of state: p = NkT/V = ρ R d T Virtual temperature T v = T (1.
A conservative FE-discretisation of the Navier-Stokes equation JASS 2005, St. Petersburg Thomas Satzger.
Lesson 22 BERNOULLI’S EQUATION
A particle-gridless hybrid methods for incompressible flows
Governing equations: Navier-Stokes equations, Two-dimensional shallow-water equations, Saint-Venant equations, compressible water hammer flow equations.
Mathematical Equations of CFD
Simplified Smoothed Particle Hydrodynamics for Interactive Applications Zakiya Tamimi Richard McDaniel Based on work done at Siemens Corporate.
Catchwater The Game Interactive Particle-Based Fluid Simulation Modeling Water Flow Through Pipes Ken Brooks and Brian Clipp May 9, 2006.
Real-time Simulation and Visualization using Pre-calculated Fluid Simulator States Marek Gayer, Pavel Slavík and František Hrdlička Computer Graphics Group.
Perpetual Visualization of Particle Motion and Fluid Flow Presented by Tsui Mei Chang.
Interactive educational system for coal combustion modeling in Power Plant boilers Marek Gayer, Pavel Slavík and František Hrdlička Computer.
Modeling and Visualization of Combustion Using Fluid Simulator and Particle Systems Ing. Marek Gayer (supervised by prof. Pavel Slavík) Computer Graphics.
Basic dynamics ●The equations of motion and continuity Scaling Hydrostatic relation Boussinesq approximation ●Geostrophic balance in ocean’s interior.
Smoothed Particle Hydrodynamics Matthew Zhu CSCI 5551 — Fall 2015.
November 2005 Center for Computational Visualization Institute of Computational and Engineering Sciences Department of Computer Sciences University of.
Efficient Simulation of Large Bodies of Water by Coupling Two and Three Dimensional Techniques SIGGRAPH 2006 Geoffrey Irving Eran Guendelman Frank Losasso.
Efficient Simulation of Large Bodies of Water by Coupling Two and Three Dimensional Techniques Geoffrey Irving Stanford University Pixar Animation Studios.
CSE 872 Dr. Charles B. Owen Advanced Computer Graphics1 Water Computational Fluid Dynamics Volumes Lagrangian vs. Eulerian modelling Navier-Stokes equations.
Efficient Simulation of Large Bodies of Water by Coupling Two and Three Dimensional Techniques Geoffrey Irving Stanford University Pixar Animation Studios.
Animating smoke with dynamic balance Jin-Kyung Hong Chang-Hun Kim 발표 윤종철.
Modelling of Marine Systems. Shallow waters Equations.
Fluid Animation CSE 3541 By: Matt Boggus.
Continuity Equation.
Computer Animation Algorithms and Techniques
ATCM 6317 Procedural Animation
V 1. Conservation of Mass dz dy dx
Introduction to Fluid Dynamics & Applications
Procedural Animation Lecture 11: Fluid dynamics
Physically Based Modeling -Overview-
14. Computational Fluid Dynamics
David Marshburn Comp 259 April 17, 2002
Presentation transcript:

Taming a Wild River Jeff Lander Darwin 3D

Introduction What types of systems am I creating?

Motivation Realistically behaving water That doesn’t just look pretty And can be interacted with

Not going to talk about Advanced rendering of water Plenty of info out there on reflections, bumpmaps, refraction, etc. Check out the hardware vendors demos for lots of examples

Talk outline Approaches for fluid dynamics Approximation techniques Interaction with objects and environment Future issues

What makes fluid look like fluid? Motion – splashing, wavy Transfer of mass – fluid flow Incompressible

How is water simulated? Fortunately quite a bit of research Fluid dynamics is a large scientific field CG researchers have looked at various methods We will look at two groups of methods Physically based Other (visual sims, hacks, etc)

Scientifically Study of Motion of fluids (water, air,etc.) Governed by the incompressible Navier- Stokes equations. These are used for much scientific work Airflow simulation Heat exchange Restricted Fluid flow (pipes, nozzles)

Navier-Stokes Equation Think of it as F = ma for fluid Plus an equation for conserving mass

Navier-Stokes Equation There is a gradient of pressure, p, inside the fluid. This gives rise to a fluid flow, v, which seeks to eliminate it. There can also be external forces, f, effecting the flow.

Navier-Stokes Equation The amount of fluid entering any section of fluid must be equal to the amount leaving. Conserving mass.

CFD Method Numerically solve the NS equations by discretizing the the continuous function. Use a method like finite differencing I will now describe a technique know as Cell-and-Marker

Cell and Marker Method Simulation field is divided into a 2D grid for a 2D sim or a 3D voxel grid for 3D.

Cell and Marker Method Each grid cell is classified as full of fluid, empty, and obstacle or a surface between fluid and the external environment.

Cell and Marker Method Velocities on each edge of the grid is calculated using the NS equations. Pressure is calculated for each square.

Cell and Marker Method Mass is conserved by calculating the divergence of fluid in a square and then update the flow to compensate for this lost mass. This is done by changing the flow in that square. This effects each neighboring square. So conservation needs to be repeated.

Cell and Marker Method System is then advanced by tracing “marker” particles through the field using the calculated velocities.

Cell and Marker Results Very realistic results for both 2D and 3D systems. Easy to set up a variety of systems Does not scale well at all. Grid size and pressure iteration are the big holdups. A variety of linear system solvers can help. Still will not scale well enough for large scale sim.

Other Methods Visual simulations and other hacks Not based on NS equations Simplifications of full NS equations

Visual Simulations Based on periodic wave functions Mixing multiple Sin waves (FFT systems) Openwater Ocean simulations Some form of mixed noise to perturb surface Don’t account for mass transfer or depth

Visual Simulations Water kind of looks like a springy surface. How about mass-spring? No mass conservation No matter transfer

Cellular Automaton Using a method where system is advanced by a set of rules involving neighbors Some function of the “height” of all neighbors is used to determine height of each cell. H(i,j) = (H(i+1,j) + H(i,j+1) + …) / N

Cellular Automaton Can be extended to 3D Actually an example of the next category

NS Simplifications May not need the full Navier-Stokes solution for most applications Focus on the aspects of fluid that are important. For something like a flowing river Surface tracking Movement of water Ability to add or remove fluid Interact with a landscape and objects

NS Simplifications Deal with the fluid simulation as a 2D problem [Kass, Miller] [Chen, Lobo] [O’Brien, Hodgins] Determine the height from implicitly Use Pressure to determine changes in height

2D Navier-Stokes Consider a single column of water Once we discretize using finite differencing and using laws fluid pressure.

2D Navier-Stokes Consider a single column of water as a 2D cell Once we discretize using finite differencing and using laws fluid pressure.

2D Navier-Stokes Cell Connections Each column is connected to each neighboring cell by virtual pipes Facilitate the flow between cells

2D Navier-Stokes Acceleration of Flow To calculate the flow between cells: Gradient of pressure is acceleration of flow Where length is the length of the virtual pipe Effective this acts like viscosity

2D Navier-Stokes Calculating flow The acceleration of fluid in the “pipes” is integrated to determine the fluid flow for a timestep. All flows are integrated over time at each cell to change the volume.

2D Navier-Stokes Volume preservation All flow exiting a cell must not move out more volume than exists. If so, the outflow values must be scaled back so the volume is >= 0

2D Navier-Stokes Rendering The height at each cell is take directly from the volume. Surface normals are calculated like a standard heightmap surface Now is where you add all your fancy pixel- shader, animated bumpmap stuff.

2D Navier-Stokes Inflow and Outflow Simulating fluid entering the sim or exiting is easy. An additional constant flow source is added to each cell. This is done prior to the mass preservation step.

2D Navier-Stokes Velocity Data This system gives us the data we want at each cell. Horizontal velocity is taken as the sum of flows between cells. Direction an object on the water surface would move Vertical velocity is the gradient of height changes. Useful for shooting of spray particles Remove volume from the cell and launch.

2D Navier-Stokes Velocity Data

2D Navier-Stokes Objects on surface Objects on the surface Creates pressure down on contact cells Increase in pressure felt by object as force up Can move in velocity field Just add object pressure as addition term

2D Navier-Stokes Ground Interface Ground height needs to be considered If neighboring ground > current volume+ground Flow between is 0 Else only the difference in height should count Don’t consider the entire volume

2D Navier-Stokes Scaling Technique works well in large environments No need to iterate over entire grid Only add cells to active list once full Remove from consideration once not connected

Problems Loss of 3D Fluid Eddies, standing waves, etc. dampened. Solution is to add in potential flow areas. (see GDMag) No breaking waves – 2D heightfield Use particle systems to break away from surface Does not model fast moving water Limited flow to only adjacent cells

Conclusions Working with simplified 2D Navier Stokes Best compromise for speed and features. Scales well Provides many of features expected in flowing water Actual transport of water volume Velocity fields Models for different viscosities of fluids Lots of hacking room Evaporation models Dynamic landscape changes Add in Turbulent noise to make the surface more bumpy

References Griebel, Michael, Dornseifer, Thomas, and Neunhoeffer, Tilman, “Numerical Simulation in Fluid Dynamics: A Practical Introduction,” SIAM, Philadelphia, PA, 1998 Kass, Michael, and Miller, Gavin, “Rapid, Stable, Fluid Dynamics for Computer Graphics,” SIGGRAPH 1990, Volume 24, Number 4, pp Chen, Jim, and Lobo, Niels da Vitoria, “Toward Interactive-Rate Simulation of Fluids with Moving Obstacles Using Navier-Stokes Equations,” Graphics Models and Image Processing, Vol. 57, No. 2, March 1995, pp Foster, Nick, and Metaxas, Dimitri, “Realistic Animation of Liquids,” Graphics Models and Image Proc., 58 (5), 1996, pp Stam, Jos, “Stable Fluids,” Proceedings of SIGGRAPH 99, 1999, ACM SIGGRAPH, pp O’Brien, James, and Hodgins, Jessica, “Dynamic Simulation of Splashing Fluids,” Computer Animation ’95, pp