Paper: Designing Nukes
for T3
Despite it's imposing topic matter and lack of apparent interaction application,
this paper was one of the cleverest things I saw at SIGGRAPH this year. The
basic problem in trying to simulate large-scale fluid flows is that the voxel
grid becomes unmanageably large even for the robust machines available today.
A 2000x2000x2000 grid for the simulation with a series of parameters at each
point is 120GB of data for the state of the grid at a single moment in time.
Instead, they chose a stunningly simple variation: they simulate a hot fluid
column rising in 2D. This simulation is fast enough to run in real-time. They
then generate two or three tiny variations on this by varying the simulation
parameters. Then they arrange these 2D slices radially around the center to
produce a 3D flow field by interpolating in cylindrical coordinates from the
2D simulations.
While this basic insight shows how to get a flow field for a fluid dynamics
problem at interactive rates, rendering such a beast is still far from
achievable interactively. For T3, they used a particle scheme where they inject
particles into the flow field and forward-integrate the particle's positions
throughout the simulation. This is easy to do but to get the effect they were
after they used, oh, six million particles. Worse yet, the best know techniques
for rendering these are volume rendering techniques (since most of the particles
are not opaque). Sigh, a few years before we can get away from those billboard
explosions I guess.
For comparison, James O'Brien's group at UC Berkeley presented another paper
on simulating explosions right after this. Their method did use a full 3D grid
and even with some fairly clever mathematics to get around the worst of the
Navier-Stokes equations, their method took at least 5 sec/frame of simulation
time (and likewise, a minute or more to render the result) for infinitely smaller
phenomena (for instance, a flamethrower) -- and their results still had a clear
graininess due to the limited grid size (35x35x35 for several of their examples).
The full title of this paper was "Smoke Simulation for Large Scale Phenomena"
by Nick Rasmussen, Duc Quang Nguyen, Willi Geiger, and Ronald Fedkiw, all associated
either with ILM or Stanford University.