This "lecture notes" is a place holder, as time has run out on me.
Particle Systems: we discussed the idea that particle systems represent fluids and sometimes moving objects such as fireworks, by randomizing velocity vectors around some central mean. Often the particles are "emitted" by a modeled source, such that you can manipulate the source and animate it. Particles' properties including size and color can vary across time, and the particles can either die (be removed from the simulation) or split (have children).
Rendering particle systems is often challenging because of the large number of very small particles involved. Sometimes motion-blur is faked by using small oriented line segments in lieu of points. Small transparent texture maps can be used to model smoke and flame, and the textures' transparency can increase over time (by cycling through several maps). Together with the semi-random movement of the particles, this provides the requisite wispy appearance.
Parsons' Double-Fake Fire. Jim Parsons (UCF Master's student under Dr. Guha's direction) developed a model of flame which used a theatrical trick. Onstage, colored silk streamers are sometimes used with a fan and light underneath. Jim used a simple physical simulation ("the flapping flag") on several strips of pseudo-cloth, then varied the lighting and made several instances of each master shape. By varying the phase of their flickering, the flame was made quite realistic. It responded to side-currents of air as a flame would.
Flowing Water. The Navier-Stokes equations represent the velocity of an infinitesimal cube of fluid in a flowing body. Discrete 3d versions of this equation require a great deal of computation. Chen's technique was to cut the fluid into two dimensional columns, and to make the internal pressure within the column proportional to the altitude of the column's height. With a smoothing technique applied to the surface at rendering time, this method produced reasonably realistic wave action. The flow vector field couldbe used to move floating objects and to visualize flow around obstacles in a waterway.
Dynamic Terrain. Li used a similar columnar model of soil flow to model bulldozers and scoop loaders' action. The key element was a careful analysis of soil slippage, which produced realistic angle-of-repose flow when soil was added to one column. Soil would flow out of a column and into the next one until the difference in the columns' heights corresponded to what the physics of the soil type would dictate.
Once the soil slippage model was working, it was used over and over. A 'dozer blade model was developed whereby forces were computed and soil moved upward onto the top of the 'soil chip' in front of the blade, as the dozer moved forward. This soil was then slipped using the flow model. It produced both a realistic berm along the sides of the dozer's path, and a realistic soil chip in front of the blade. When the dozer backed away from its load, the resulting pile slipped into a natural shape.
A bucket loader was built which used the slip model three times more. When loading, the bucket behaved similarly to the dozer blade except the berm accumulated inside the bucket. When lifting, the bucket's contents would spill appropriately. An animated texture map was used to fake the flow of soil falling rom the bucket, and a slumping pile grew on the ground plane below.
The simulated world was 1m gridded, but a 'footprint' of 10 cm squares
was carried along with the 'dozer. Behind the dozer this terrain was again
relaxed into 1m squares if doing so would not violate the resulting surface's
shape by more than a set parameter.