A Slimy Graphics Algorithm
by David Pescovitz
Printer-friendly
version
James O'Brien leads the Berkeley Computer Animation & Modeling (B-Cam) group. (David Pescovitz photo) |
We live in a viscous world of bubbling and oozing fluids. From mud to blood to paint, much of the stuff that surrounds us is neither perfectly liquid nor perfectly solid. Digitally simulating these materials' changing properties is an historically difficult challenge in computer graphics. But UC Berkeley researcher James O'Brien has developed a novel way to animate viscoelastic fluids that could bring movies, videogames, and even surgical simulations much closer to reality.
"For quite some time, we've had mathematical models for simulating idealized solids," says O'Brien, a professor in the Department of Electrical Engineering and Computer Sciences. "And we have other models for simulating idealized liquids. But there are many materials that are in between. They may look like solids, but they also can flow like liquids."
Take clay, for example. It usually maintains a solid form, but squeezing the clay causes it to flow. If a special effects artist wants to add a spray of mud to a scene of a spacecraft crashing into a forest, "treating the computer-generated mud like viscous water just won't look real," O'Brien says.
The same holds true for blood and mucous. The ability to realistically render those materials using a computer won't just up the gore ante in horror films either. Eventually, medical students might practice their skills using "virtual surgery" systems. Creating a realistic surgery simulator though depends on lifelike models of the body's internal organs.
"One of the place where you'll see a ton of fluids with all sorts of very interesting and different properties is inside the human body," O'Brien says. "If you're able to model the human body with a high degree of accuracy, a surgeon can train on a simulator like a pilot trains on a flight simulator."
The algorithm O'Brien developed with graduate students Tolga Goktekin and Adam Bargteil takes existing fluid simulations and adds the ingredient that gives materials like toothpaste, motor oil, and dish soap characteristics of both liquids and solids. The key difference between basic fluids and solids, O'Brien explains, is the presence or absence of elastic forces.
For example, if you gently try to bend a spoon just a little bit, elastic forces cause it to spring back to its original shape. But apply too much pressure and the molecules flow into a new configuration, leaving the spoon bent.
"The same thing happens with viscoelastic fluids," O'Brien says. "If you squirt a little ketchup on a plate, it doesn't flow into a puddle but rather sits there as a glob. That's because there's a very small amount of elastic force."
O'Brien's algorithm is rooted in the mathematics of Level Sets, a method developed in 1988 at UC Berkeley and UCLA to track and simulate the shifting boundaries of many dynamic materials.
"When the strain in a viscoelastic material is too large, it starts to flow," O'Brien says. "By setting those thresholds low and modeling the flow properly, the simulated viscoelastic fluid behaves correctly."
The researchers presented their work at the SIGGRAPH 2004 computer graphics conference in August. A short film demonstrating the algorithm was shown as part of the popular Electronic Theater program. Applying the technique to interactive simulations such as virtual surgery are still several years away though. Faster computer processors and more efficient algorithms are necessary to generate viscoelastic animations in real-time.
More advanced versions of the algorithm will likely be seen on the big screen before the operating theater. Already, several movie studios have expressed interest in the technology. Once the basic fluid simulation framework is complete, O'Brien says, it will be surprisingly easy for special effects artists to use the tool.
"If special effects are done right, you shouldn't even notice that they're there," he says.
James O'Brien's home page
Berkeley Computer Animation & Modeling (B-CAM) group
"Boundaries Unbounded" by David Pescovitz (ScienceMatters@Berkeley)
Lab Notes is
published online by the Public Affairs Office of the UC Berkeley
College of Engineering. The Lab Notes mission is to illuminate groundbreaking
research underway today at the College of Engineering that will
dramatically change our lives tomorrow.
Media contact: Teresa
Moore, Lab Notes editor, Director of Public Affairs
Writer, Researcher: David
Pescovitz
Web Manager: Michele
Foley
Subscribe or send comments to the Engineering Public Affairs
Office: lab-notes@coe.berkeley.edu.
© 2004 UC Regents.
Updated 10/01/04.
|