Fluid animation

Last updated
An example of a liquid animation generated through simulation Waterincup.gif
An example of a liquid animation generated through simulation

Fluid animation refers to computer graphics techniques for generating realistic animations of fluids such as water and smoke. [1] Fluid animations are typically focused on emulating the qualitative visual behavior of a fluid, with less emphasis placed on rigorously correct physical results, although they often still rely on approximate solutions to the Euler equations or Navier–Stokes equations that govern real fluid physics. Fluid animation can be performed with different levels of complexity, ranging from time-consuming, high-quality animations for films, or visual effects, to simple and fast animations for real-time animations like computer games. [2]

Contents

Relationship to computational fluid dynamics

Fluid animation differs from computational fluid dynamics (CFD) in that fluid animation is used primarily for visual effects, whereas computational fluid dynamics is used to study the behavior of fluids in a scientifically rigorous way.

Development

Simulation of two fluids with different viscosities Viscosities.gif
Simulation of two fluids with different viscosities

The development of fluid animation techniques based on the Navier–Stokes equations began in 1996, when Nick Foster and Dimitris Metaxas [3] implemented solutions to 3D Navier-Stokes equations in a computer graphics context, basing their work on a scientific CFD paper by Harlow and Welch from 1965. [4] Up to that point, a variety of simpler methods had primarily been used, including ad-hoc particle systems, [5] lower dimensional techniques such as height fields, [6] and semi-random turbulent noise fields. [7]

In 1999, Jos Stam published the "Stable Fluids" [8] method, which exploited a semi-Lagrangian advection technique and implicit integration of viscosity to provide unconditionally stable behaviour. This allowed for much larger time steps and therefore faster simulations. This general technique was extended by Ronald Fedkiw and co-authors to handle more realistic smoke [9] and fire, [10] as well as complex 3D water simulations using variants of the level-set method. [11] [12]

Some notable academic researchers in this area include Jerry Tessendorf, James F. O'Brien, Ron Fedkiw, Mark Carlson, Greg Turk, Robert Bridson, Ken Museth, and Jos Stam.[ citation needed ]

Software

Many 3D computer graphics programs implement fluid animation techniques. RealFlow is a standalone commercial package that has been used to produce visual effects in movies, television shows, commercials, and games.[ citation needed ] RealFlow implements a fluid-implicit particle (FLIP; an extension of the Particle-in-cell method) solver, a hybrid grid, and a particle method that allows for advanced features such as foam and spray. Maya and Houdini are two other commercial 3D computer graphics programs that allow for fluid animation.

Blender is an open-source 3D computer graphics program that utilized a particle-based Lattice Boltzmann method for animating fluids [13] until the integration of the open-source mantaflow project in 2020 with a wide range of Navier-Stokes solver variants. [14]

See also

Related Research Articles

<span class="mw-page-title-main">Rendering (computer graphics)</span> Process of generating an image from a model

Rendering or image synthesis is the process of generating a photorealistic or non-photorealistic image from a 2D or 3D model by means of a computer program. The resulting image is referred to as the render. Multiple models can be defined in a scene file containing objects in a strictly defined language or data structure. The scene file contains geometry, viewpoint, textures, lighting, and shading information describing the virtual scene. The data contained in the scene file is then passed to a rendering program to be processed and output to a digital image or raster graphics image file. The term "rendering" is analogous to the concept of an artist's impression of a scene. The term "rendering" is also used to describe the process of calculating effects in a video editing program to produce the final video output.

<span class="mw-page-title-main">Particle system</span> Technique in game physics, motion graphics and computer graphics

A particle system is a technique in game physics, motion graphics, and computer graphics that uses many minute sprites, 3D models, or other graphic objects to simulate certain kinds of "fuzzy" phenomena, which are otherwise very hard to reproduce with conventional rendering techniques – usually highly chaotic systems, natural phenomena, or processes caused by chemical reactions.

<span class="mw-page-title-main">Boids</span> Artificial life program

Boids is an artificial life program, developed by Craig Reynolds in 1986, which simulates the flocking behaviour of birds, and related group motion. His paper on this topic was published in 1987 in the proceedings of the ACM SIGGRAPH conference. The name "boid" corresponds to a shortened version of "bird-oid object", which refers to a bird-like object. Reynolds' boid model is one example of a larger general concept, for which many other variations have been developed since. The closely related work of Ichiro Aoki is noteworthy because it was published in 1982 — five years before Reynolds' boids paper.

<span class="mw-page-title-main">Volume rendering</span> Representing a 3D-modeled object or dataset as a 2D projection

In scientific visualization and computer graphics, volume rendering is a set of techniques used to display a 2D projection of a 3D discretely sampled data set, typically a 3D scalar field.

<span class="mw-page-title-main">Crowd simulation</span> Model of movement

Crowd simulation is the process of simulating the movement of a large number of entities or characters. It is commonly used to create virtual scenes for visual media like films and video games, and is also used in crisis training, architecture and urban planning, and evacuation simulation.

In the field of 3D computer graphics, a subdivision surface is a curved surface represented by the specification of a coarser polygon mesh and produced by a recursive algorithmic method. The curved surface, the underlying inner mesh, can be calculated from the coarse mesh, known as the control cage or outer mesh, as the functional limit of an iterative process of subdividing each polygonal face into smaller faces that better approximate the final underlying curved surface. Less commonly, a simple algorithm is used to add geometry to a mesh by subdividing the faces into smaller ones without changing the overall shape or volume.

<span class="mw-page-title-main">Stanford bunny</span> Computer graphics 3D reference model

The Stanford bunny is a computer graphics 3D test model developed by Greg Turk and Marc Levoy in 1994 at Stanford University. The model consists of 69,451 triangles, with the data determined by 3D scanning a ceramic figurine of a rabbit. This figurine and others were scanned to test methods of range scanning physical objects.

<span class="mw-page-title-main">ACM SIGGRAPH</span> ACMs Special Interest Group on Computer Graphics

ACM SIGGRAPH is the international Association for Computing Machinery's Special Interest Group on Computer Graphics and Interactive Techniques based in New York. It was founded in 1969 by Andy van Dam.

<span class="mw-page-title-main">Catmull–Clark subdivision surface</span> Technique in 3D computer graphics

The Catmull–Clark algorithm is a technique used in 3D computer graphics to create curved surfaces by using subdivision surface modeling. It was devised by Edwin Catmull and Jim Clark in 1978 as a generalization of bi-cubic uniform B-spline surfaces to arbitrary topology.

<span class="mw-page-title-main">Non-photorealistic rendering</span> Style of rendering

Non-photorealistic rendering (NPR) is an area of computer graphics that focuses on enabling a wide variety of expressive styles for digital art, in contrast to traditional computer graphics, which focuses on photorealism. NPR is inspired by other artistic modes such as painting, drawing, technical illustration, and animated cartoons. NPR has appeared in movies and video games in the form of cel-shaded animation as well as in scientific visualization, architectural illustration and experimental animation.

<span class="mw-page-title-main">Pat Hanrahan</span> American computer graphics researcher

Patrick M. Hanrahan is an American computer graphics researcher, the Canon USA Professor of Computer Science and Electrical Engineering in the Computer Graphics Laboratory at Stanford University. His research focuses on rendering algorithms, graphics processing units, as well as scientific illustration and visualization. He has received numerous awards, including the 2019 Turing Award.

<span class="mw-page-title-main">Jos Stam</span>

Jos Stam is a researcher in the field of computer graphics, focusing on the simulation of natural physical phenomena for 3D-computer animation. He achieved technical breakthroughs with the simulation of fluids and gases, new rendering algorithms and subdivision surfaces, which are a mix between two previously incompatible worlds of Nurbs- and polygon-modeling in 3D.

Ronald Paul "Ron" Fedkiw is a full professor in the Stanford University department of computer science and a leading researcher in the field of computer graphics, focusing on topics relating to physically based simulation of natural phenomena and machine learning. His techniques have been employed in many motion pictures. He has earned recognition at the 80th Academy Awards and the 87th Academy Awards as well as from the National Academy of Sciences.

<span class="mw-page-title-main">Andrew Witkin</span> American computer scientist (1952–2010)

Andrew Paul Witkin was an American computer scientist who made major contributions in computer vision and computer graphics.

Pose space deformation is a computer animation technique which is used to deform a mesh on skeleton-driven animation. Common use of this technique is to deform the shape of a mesh according to the angle of the joint bent. Although the name is commonly called Pose space deformation on many scholarly articles, 3D animation software rarely uses that name. On Autodesk Maya, it's implemented under the name Pose Deformer, and on Blender, it's implemented as Corrective Shape Keys. The first famous application of this technique was the cloth's movement on the first episode of the animated film The Animatrix.

In computer graphics, free-form deformation (FFD) is a geometric technique used to model simple deformations of rigid objects. It is based on the idea of enclosing an object within a cube or another hull object, and transforming the object within the hull as the hull is deformed. Deformation of the hull is based on the concept of so-called hyper-patches, which are three-dimensional analogs of parametric curves such as Bézier curves, B-splines, or NURBs. The technique was first described by Thomas W. Sederberg and Scott R. Parry in 1986, and is based on an earlier technique by Alan Barr. It was extended by Coquillart to a technique described as extended free-form deformation, which refines the hull object by introducing additional geometry or by using different hull objects such as cylinders and prisms.

Physically based animation is an area of interest within computer graphics concerned with the simulation of physically plausible behaviors at interactive rates. Advances in physically based animation are often motivated by the need to include complex, physically inspired behaviors in video games, interactive simulations, and movies. Although off-line simulation methods exist to solve most all of the problems studied in physically-based animation, these methods are intended for applications that necessitate physical accuracy and slow, detailed computations. In contrast to methods common in offline simulation, techniques in physically based animation are concerned with physical plausibility, numerical stability, and visual appeal over physical accuracy. Physically based animation is often limited to loose approximations of physical behaviors because of the strict time constraints imposed by interactive applications. The target frame rate for interactive applications such as games and simulations is often 25-60 hertz, with only a small fraction of the time allotted to an individual frame remaining for physical simulation. Simplified models of physical behaviors are generally preferred if they are more efficient, easier to accelerate, or satisfy desirable mathematical properties. Fine details are not important when the overriding goal of a visualization is aesthetic appeal or the maintenance of player immersion since these details are often difficult for humans to notice or are otherwise impossible to distinguish at human scales.

<span class="mw-page-title-main">Duncan Brinsmead</span> Canadian software programmer

Duncan Brinsmead is a Canadian software programmer and developer of simulations of natural environments in 3D computer graphics (CGI). He created the Maya Paint Effects for digitally painting instances like plants or hair in a virtual 3D environment. In 2008, together with Jos Stam, Julia Pakalns and Martin Werner he received an Academy Award for Technical Achievement for the design and implementation of the Maya Fluid Effects system. Fluid Effects are based on the simulation of fluid mechanics in software and used for simulating natural phenomena such as fog, steam or smoke.

<span class="mw-page-title-main">Nadia Magnenat Thalmann</span> Computer scientist

Nadia Magnenat Thalmann is a computer graphics scientist and robotician and is the founder and head of MIRALab at the University of Geneva. She has chaired the Institute for Media Innovation at Nanyang Technological University (NTU), Singapore from 2009 to 2021.

<span class="mw-page-title-main">Michael F. Cohen</span> American computer scientist

Michael F. Cohen is an American computer scientist and researcher in computer graphics. He is currently a Senior Fellow at Meta in their Generative AI Group. He was a senior research scientist at Microsoft Research for 21 years until he joined Facebook in 2015. In 1998, he received the ACM SIGGRAPH CG Achievement Award for his work in developing radiosity methods for realistic image synthesis. He was elected a Fellow of the Association for Computing Machinery in 2007 for his "contributions to computer graphics and computer vision." In 2019, he received the ACM SIGGRAPH Steven A. Coons Award for Outstanding Creative Contributions to Computer Graphics for “his groundbreaking work in numerous areas of research—radiosity, motion simulation & editing, light field rendering, matting & compositing, and computational photography”.

References

  1. Bridson, Robert. Fluid Simulation for Computer Graphics (2nd ed.). CRC Press.
  2. Mastin, Gary A.; Watterberg, Peter A.; Mareda, John F. (March 1987). "Fourier Synthesis of Ocean Scenes" (PDF). IEEE Computer Graphics and Applications. 7 (3): 16–23. doi:10.1109/MCG.1987.276961. S2CID   1330805. Archived from the original (PDF) on 2016-03-05. Retrieved 2014-08-31.
  3. Foster, Nick; Metaxas, Dimitri (1996-09-01). "Realistic Animation of Liquids". Graphical Models and Image Processing. 58 (5): 471–483. CiteSeerX   10.1.1.331.619 . doi:10.1006/gmip.1996.0039.
  4. Harlow, Francis H.; Welch, J. Eddie (1965-12-01). "Numerical Calculation of Time‐Dependent Viscous Incompressible Flow of Fluid with Free Surface". Physics of Fluids. 8 (12): 2182–2189. Bibcode:1965PhFl....8.2182H. doi:10.1063/1.1761178. ISSN   0031-9171.
  5. Reeves, W. T. (1983-04-01). "Particle Systems—a Technique for Modeling a Class of Fuzzy Objects". ACM Trans. Graph. 2 (2): 91–108. CiteSeerX   10.1.1.517.4835 . doi:10.1145/357318.357320. ISSN   0730-0301. S2CID   181508.
  6. Kass, Michael; Miller, Gavin (1990-01-01). "Rapid, stable fluid dynamics for computer graphics". Proceedings of the 17th annual conference on Computer graphics and interactive techniques. SIGGRAPH '90. New York: ACM. pp. 49–57. doi:10.1145/97879.97884. ISBN   978-0897913447. S2CID   12925789.
  7. Stam, Jos; Fiume, Eugene (1993-01-01). "Turbulent wind fields for gaseous phenomena". Proceedings of the 20th annual conference on Computer graphics and interactive techniques. SIGGRAPH '93. New York: ACM. pp. 369–376. doi:10.1145/166117.166163. ISBN   978-0897916011. S2CID   1618202.
  8. Stam, Jos (1999-01-01). "Stable fluids". Proceedings of the 26th annual conference on Computer graphics and interactive techniques - SIGGRAPH '99. SIGGRAPH '99. New York: ACM Press/Addison-Wesley Publishing Co. pp. 121–128. doi:10.1145/311535.311548. ISBN   978-0201485608. S2CID   207555779.
  9. Fedkiw, Ronald; Stam, Jos; Jensen, Henrik Wann (2001-01-01). "Visual simulation of smoke". Proceedings of the 28th annual conference on Computer graphics and interactive techniques. SIGGRAPH '01. New York: ACM. pp.  15–22. CiteSeerX   10.1.1.29.2220 . doi:10.1145/383259.383260. ISBN   978-1581133745. S2CID   7000291.
  10. Nguyen, Duc Quang; Fedkiw, Ronald; Jensen, Henrik Wann (2002-01-01). "Physically based modeling and animation of fire". Proceedings of the 29th annual conference on Computer graphics and interactive techniques. SIGGRAPH '02. New York: ACM. pp. 721–728. doi:10.1145/566570.566643. ISBN   978-1581135213. S2CID   356538.
  11. Foster, Nick; Fedkiw, Ronald (2001-01-01). "Practical animation of liquids". Proceedings of the 28th annual conference on Computer graphics and interactive techniques. SIGGRAPH '01. New York, NY, USA: ACM. pp.  23–30. CiteSeerX   10.1.1.21.932 . doi:10.1145/383259.383261. ISBN   978-1581133745. S2CID   8782248.
  12. Enright, Douglas; Marschner, Stephen; Fedkiw, Ronald (2002-01-01). "Animation and rendering of complex water surfaces". Proceedings of the 29th annual conference on Computer graphics and interactive techniques. SIGGRAPH '02. New York: ACM. pp. 736–744. CiteSeerX   10.1.1.19.6229 . doi:10.1145/566570.566645. ISBN   978-1581135213. S2CID   1233095.
  13. "Doc:2.4/Manual/Physics/Fluid - BlenderWiki". wiki.blender.org. Archived from the original on 2016-01-31. Retrieved 2016-11-04.
  14. "Reference/Release Notes/2.82 - Blender Developer Wiki". wiki.blender.org. Retrieved 2020-06-10.