Dr. Dobb's Journal - May 2008 - (Page 18) d05lead_p2as 3/12/08 11:24 AM Page 18 Strategic Vision SOFTWARE DEVELOPMENT GOES TO THE MOVIES Solving software problems for moviemaking can pay off for software development generally, and in less “frivolous” applications Visualization In Movies and In Science In the movies, you get spaceships and planets. But those same techniques applied to scientific data yields scientific visualizations that let researchers see things they never could have before. —Larry Yaeger Is there a pattern to these software innovations in moviemaking? Yes. Many of the technologies come under the heading of fundamental processes of synthesizing images, or visualization. And the connection between movie special effects and scientific visualization was there right from the start. In the early 1970s, Bernard Chern at NSF launched a program to support work on computer systems for modeling objects in three dimensions. This was a discipline in which, according to Herbert Volcker, who started the computer model program at the University of Rochester, “there were no mathematical and computational means for describing mechanical parts unambiguously…There were no accepted scientific foundations, almost no literature, and no acknowledged community of scholars and researchers.” Under the impetus of the NSF (and maybe the hope of winning an Oscar), this situation was changing rapidly. By the mid1980s, NSF funded four organizations specifically to help scientists visualize data. One of these organizations was Digital Productions, a company better known for producing special effects for television and the movies. But under NSF encouragement, DP became responsible for some of the first really good three-dimensional visualizations of scientific data. “Everything from the world of movie special effects was pressed into service,” according to Yaeger, “hidden surface removal, 18 Dr. Dobb’s Journal l www.ddj.com l May 2008 lighting and shading, texture mapping, transparency, bump mapping, you name it.” Visualization was changing the way scientists thought about their work. “Scientists started being able to see the output of their simulations of galaxy formations, black holes, and the like,” Yaeger says. And just as movie techniques were being adopted in scientific visualization, techniques from scientific visualization were feeding back to the movies. “[C]omputational fluid dynamics, such as drove those scientific simulations, drove the motion of the atmosphere in the planet Jupiter seen in the movie 2010.” (Yaeger, who is one of the leading researchers in Artificial Life and teaches at Indiana University, worked on 2010, and was later the technical consultant on Terminator 2.) By 1991, the field of computer visualization was exploding. “The field had gotten so big, with so many specialties, that no one could know it all. No single research lab could do it all. Graphics hadn’t just become broad—it was increasingly interdisciplinary,” explains Andries van Dam, director of NSF’s Science and Technology Center for Computer Graphics and Scientific Visualization. Movies As Science In the past, I have always thought of visualization as primarily a mental process: You receive some knowledge (from any of various sources) and, when you understand it thoroughly, you can ‘create a picture of it’ in your mind. Nowadays, computer graphicists are trying to place this picture more directly in the mind by creating the pictures with a computer. —Jim Blinn It is not simply the fact that scientific side effects can result from solving the technical problems involved in pushing the state of the art in movie special effects and animation. The problems in such movies are often the same as the problems in computer visualization. In fact, there is now the notion of movies as science: In the early 1980s, JPL decided, for purely scientific reasons, to produce LA—the Movie, a fly-over of Southern California, based on multispectral satellite image data. By 1990, it was becoming clear what one use of supercomputers would be: Crunching numbers to produce scientific cinema. From a 1990 supercomputing conference paper: “The collapse of an unstable cluster to a supermassive black hole at the center of a galaxy may explain the origin of quasars and active galactic nuclei. By means of a supercomputer simulation and color graphics, the whole process can be viewed in real time on a movie screen.” And then there’s Jim Blinn. Blinn did the graphics for Carl Sagan’s Cosmos and muchviewed simulations of Voyager visiting Jupiter and Saturn. But Blinn is also known for fundamental work in scientific visualization. He came up with new methods to represent the interaction of objects and light in a three-dimensional virtual world. He is now a graphics fellow at Microsoft Research. In the words of Alvy Ray Smith, “Jim is one of the pioneers…everything he did helped establish the field as we know it today.” Bump mapping is one of the methods Blinn developed. “You can emboss a surface or give it a texture like leather or what not,” he explains at the Microsoft site. “ It’s the sort of thing that shows up on the skins of dinosaurs in Jurassic Park.” Also from the Microsoft site: “Blinn’s early work in computer graphics drew the attention of several Hollywood movie producers, who began calling Blinn to request demonstrations of the special effects he was incorporating into his videos.” Blinn: “A lot of people went out and started their own computer graphics groups and special effects houses after seeing the demos I’d done.” Visualization is at the heart of modern moviemaking. It also allows scientists to investigate fields where other research techniques fail to deliver useful insight. “One of the early visualization success stories,” according to an NSF website on the history of scientific visualization, “was a model of smog spreading over southern California, a model so informative and realistic that it helped to influence antipollution legislation in the state.” Being able to create a perfect storm for a movie is cool. Being able to perfectly model a real storm, that’s important. The fact that the same research might solve both problems? Brilliant. DDJ http://www.ddj.com
Table of Contents Feed for the Digital Edition of Dr. Dobb's Journal - May 2008 Dr. Dobb's Journal - May 2008 Contents Friday Night Fish Fry Alia Vox Developer Diaries Software Development Goes to the Movies Cat: A Functional Stack-Based Little Language Mojax: Mobile Ajax Framework Kernel-Mode Databases Getting Better Search Results Effective Concurrency The Agile Edge Dr. Dobb's Journal - May 2008 Dr. Dobb's Journal - May 2008 - Dr. Dobb's Journal - May 2008 (Page Cover1) Dr. Dobb's Journal - May 2008 - Dr. Dobb's Journal - May 2008 (Page Cover2) Dr. Dobb's Journal - May 2008 - Dr. Dobb's Journal - May 2008 (Page 1) Dr. Dobb's Journal - May 2008 - Dr. Dobb's Journal - May 2008 (Page 2) Dr. Dobb's Journal - May 2008 - Dr. Dobb's Journal - May 2008 (Page 3) Dr. Dobb's Journal - May 2008 - Contents (Page 4) Dr. Dobb's Journal - May 2008 - Contents (Page 5) Dr. Dobb's Journal - May 2008 - Friday Night Fish Fry (Page 6) Dr. Dobb's Journal - May 2008 - Friday Night Fish Fry (Page 7) Dr. Dobb's Journal - May 2008 - Friday Night Fish Fry (Page 8) Dr. Dobb's Journal - May 2008 - Friday Night Fish Fry (Page 9) Dr. Dobb's Journal - May 2008 - Alia Vox (Page 10) Dr. Dobb's Journal - May 2008 - Alia Vox (Page 11) Dr. Dobb's Journal - May 2008 - Developer Diaries (Page 12) Dr. Dobb's Journal - May 2008 - Developer Diaries (Page 13) Dr. Dobb's Journal - May 2008 - Developer Diaries (Page 14) Dr. Dobb's Journal - May 2008 - Developer Diaries (Page 15) Dr. Dobb's Journal - May 2008 - Software Development Goes to the Movies (Page 16) Dr. Dobb's Journal - May 2008 - Software Development Goes to the Movies (Page 17) Dr. Dobb's Journal - May 2008 - Software Development Goes to the Movies (Page 18) Dr. Dobb's Journal - May 2008 - Software Development Goes to the Movies (Page 19) Dr. Dobb's Journal - May 2008 - Software Development Goes to the Movies (Page 20) Dr. Dobb's Journal - May 2008 - Software Development Goes to the Movies (Page 21) Dr. Dobb's Journal - May 2008 - Cat: A Functional Stack-Based Little Language (Page 22) Dr. Dobb's Journal - May 2008 - Cat: A Functional Stack-Based Little Language (Page 23) Dr. Dobb's Journal - May 2008 - Cat: A Functional Stack-Based Little Language (Page 24) Dr. Dobb's Journal - May 2008 - Cat: A Functional Stack-Based Little Language (Page 25) Dr. Dobb's Journal - May 2008 - Cat: A Functional Stack-Based Little Language (Page 26) Dr. Dobb's Journal - May 2008 - Cat: A Functional Stack-Based Little Language (Page 27) Dr. Dobb's Journal - May 2008 - Cat: A Functional Stack-Based Little Language (Page 28) Dr. Dobb's Journal - May 2008 - Cat: A Functional Stack-Based Little Language (Page 29) Dr. Dobb's Journal - May 2008 - Mojax: Mobile Ajax Framework (Page 30) Dr. Dobb's Journal - May 2008 - Mojax: Mobile Ajax Framework (Page 31) Dr. Dobb's Journal - May 2008 - Mojax: Mobile Ajax Framework (Page 32) Dr. Dobb's Journal - May 2008 - Mojax: Mobile Ajax Framework (Page 33) Dr. Dobb's Journal - May 2008 - Mojax: Mobile Ajax Framework (Page 34) Dr. Dobb's Journal - May 2008 - Mojax: Mobile Ajax Framework (Page 35) Dr. Dobb's Journal - May 2008 - Mojax: Mobile Ajax Framework (Page 36) Dr. Dobb's Journal - May 2008 - Mojax: Mobile Ajax Framework (Page 37) Dr. Dobb's Journal - May 2008 - Kernel-Mode Databases (Page 38) Dr. Dobb's Journal - May 2008 - Kernel-Mode Databases (Page 39) Dr. Dobb's Journal - May 2008 - Kernel-Mode Databases (Page 40) Dr. Dobb's Journal - May 2008 - Kernel-Mode Databases (Page 41) Dr. Dobb's Journal - May 2008 - Kernel-Mode Databases (Page 42) Dr. Dobb's Journal - May 2008 - Kernel-Mode Databases (Page 43) Dr. Dobb's Journal - May 2008 - Getting Better Search Results (Page 44) Dr. Dobb's Journal - May 2008 - Getting Better Search Results (Page 45) Dr. Dobb's Journal - May 2008 - Getting Better Search Results (Page 46) Dr. Dobb's Journal - May 2008 - Getting Better Search Results (Page 47) Dr. Dobb's Journal - May 2008 - Getting Better Search Results (Page 48) Dr. Dobb's Journal - May 2008 - Effective Concurrency (Page 49) Dr. Dobb's Journal - May 2008 - Effective Concurrency (Page 50) Dr. Dobb's Journal - May 2008 - Effective Concurrency (Page 51) Dr. Dobb's Journal - May 2008 - The Agile Edge (Page 52) Dr. Dobb's Journal - May 2008 - The Agile Edge (Page 53) Dr. Dobb's Journal - May 2008 - The Agile Edge (Page 54) Dr. Dobb's Journal - May 2008 - The Agile Edge (Page 55) Dr. Dobb's Journal - May 2008 - The Agile Edge (Page 56) Dr. Dobb's Journal - May 2008 - The Agile Edge (Page Cover3) Dr. Dobb's Journal - May 2008 - The Agile Edge (Page Cover4)
For optimal viewing of this digital publication, please enable JavaScript and then refresh the page. If you would like to try to load the digital publication without using Flash Player detection, please click here.