Graphics Reference
In-Depth Information
For now we'll take all the particle radii to be the same r , though better
results can be obtained if a particle's radius is actually its distance to the
closest point on the desired water surface—see the paper by Adams et
al. [Adams et al. 07] for an example of how to compute this practically, us-
ing a point-based fast marching algorithm similar to Corbett's [Corbett 05].
Finally, the surface is defined as the points x where φ ( x ) = 0, the zero iso-
contour or level set of φ . Once again, for an isolated particle this gives
a perfect sphere of radius r . The advantage of this formula over regu-
lar blobbies is that it gives somewhat flatter, smoother results where the
particles should be sampling smooth geometry, and it is less sensitive to
non-uniformities in sampling; however, it does have the disadvantage of po-
tentially introducing small-scale “chaff” in concavities (gaps) in the particle
distribution.
Once an implicit surface has been defined, using either formulation, it
may be directly rendered with a raytracer using root-finding along each
ray. However, more commonly—and more eciently—the implicit surface
function is instead sampled onto a grid. Typically this grid is double or
more the resolution of the simulation grid. Interpolating from the grid val-
ues is generally much faster than directly evaluating the formula, so this
can speed up ray tracing. More to the point, marching cubes or related
algorithms can be run on the grid to generate a mesh of the surface, suit-
able for any renderer. To further reduce bumpy artifacts in the surface,
the values on the grid can be smoothed (essentially by convolving with
a Gaussian blur filter or something similar), or the mesh from marching
cubes can be improved with a mesh-fairing algorithm.
Incidentally, you might be asking why not just start with a mesh in
the first place and move its vertices according to the fluid flow. This does
offer a lot of advantages over the methods covered in this topic, but it
has its own set of problems. Typical fluid motion can swirl around in-
definitely, letting two points which are initially very close end up very far
apart: if we connect up points in a mesh, we can expect that before long the
mesh will get tangled and must be reconnected. While volume is preserved
in incompressible flow, surface area certainly may change, which further
necessitates adaptive meshing—adding and deleting elements to maintain
good sampling. Finally topology changes such as a drop of water merging
into another, or a thin sheet separating into a spray of droplets, require
non-trivial alterations to a mesh. 3
Brochu and Bridson [Brochu and Brid-
3 This might be a good place to point out that, technically, the usual Navier-Stokes
equations don't obviously support topology change. If you evolve a path-connected re-
gion in a smooth flow, it remains path-connected. To see this, imagine a smooth curve
Search WWH ::




Custom Search