Combining Particles and Waves for Fluid Animation
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16539
Modeling fluid motion is a problem largely unsolved by traditional modeling techniques. Animation of fluid motion has been possible only in special cases, falling into one of two general categories. Upper surface representations model wave phenomena for fluid in placid situations, such as calm ocean waves. Particle systems define the chaotic motion of fluid in highly volatile states, like waterfalls. Each technique can mimic physical motion of liquid only in limited situations. We propose a system unifying previous techniques. We describe a system containing fluid of both categories. Two representations for fluid, corresponding to previous methods, allow modeling a wide range of situations. Automatic transitions between representations allow using the most appropriate technique for a given physical situation. Fluid is represented by two types of primitives: drops and pools. The drops constitute a particle system describing small, independent components. Pools model large bodies of fluid in more placid situations. The notion of support differentiates the situations that each representation models best. In general terms, fluid is supported when there is a solid underneath the fluid. Previous techniques generally either assume that support is omnipresent or that support is nonexistent. In our system, support determines which representation should be used and when transitions between the two should occur. Supported drops flatten and become pools. Unsupported pools spawn drops. Combining the two techniques into a single system allows mimicking fluid in a broader range of physical situations than previous methods. The resulting system models fluid motion based on physical properties of the environment. Gravity causes fluid to fall or flow downward. Solids restrict fluid motion, changing the course of flowing fluid and defining the shape of contained fluid.