The CD content, including demos and content, is available on the web and for download.
You can also subscribe to our Developer News Feed to get notifications of new material on the site.
Thomas Alexander cofounded Exapath, a startup focused on mapping networking algorithms onto GPGPUs. Previously he was at Juniper Networks working in the Infrastructure Product Group building core routers. Thomas has a Ph.D. in electrical engineering from Duke University, where he also worked on a custom-built parallel machine for ray casting.
Kavita Bala is an assistant professor in the Computer Science Department and Program of Computer Graphics at Cornell University. Bala specializes in scalable rendering for high-complexity illumination, interactive global illumination, perceptually based rendering, and image-based texturing. Bala has published research papers and served on the program committees of several conferences, including SIGGRAPH. In 2005, Bala cochaired the Eurographics Symposium on Rendering. She has coauthored the graduate-level textbook Advanced Global Illumination, 2nd ed. (A K Peters, 2006). Before Cornell, Bala received her S.M. and Ph.D. from the Massachusetts Institute of Technology, and her B.Tech. from the Indian Institute of Technology Bombay.
Kevin Bjorke is a member of the Technology Evangelism group at NVIDIA, and continues his roles as editor and contributor to the previous volumes of GPU Gems. He has a broad background in production of both live-action and animated films, TV, advertising, theme park rides, print, and—of course—games. Kevin has been a regular speaker at events such as SIGGRAPH and GDC since the mid-1980s. His current work focuses on applying NVIDIA's horsepower and expertise to help developers fulfill their individual ambitions.
Jean-Yves Blanc received a Ph.D. in applied mathematics in 1991 from the Institut National Polytechnique de Grenoble, France. He joined CGG in 1992, where he introduced and developed parallel processing for high-performance computing seismic applications. He is now in charge of IT strategy for the Processing and Reservoir product line.
Jim Blinn began doing computer graphics in 1968 while an undergraduate at the University of Michigan. In 1974 he became a graduate student at the University of Utah, where he did research in specular lighting models, bump mapping, and environment/reflection mapping and received a Ph.D. in 1977. He then went to JPL and produced computer graphics animations for various space missions to Jupiter, Saturn, and Uranus, as well as for Carl Sagan's PBS series "Cosmos" and for the Annenberg/CPB-funded project "The Mechanical Universe," a 52-part telecourse to teach college-level physics. During these productions he developed several other techniques, including work in cloud simulation, displacement mapping, and a modeling scheme variously called blobbies or metaballs. Since 1987 he has written a regular column in the IEEE Computer Graphics and Applications journal, where he describes mathematical techniques used in computer graphics. He has just published his third volume of collected articles from this series. In 1995 he joined Microsoft Research as a Graphics Fellow. He is a MacArthur Fellow, a member of the National Academy of Engineering, has an honorary Doctor of Fine Arts degree from Otis Parsons School of Design, and has received both the SIGGRAPH Computer Graphics Achievement Award (1983) and the Steven A. Coons Award (1999).
George Borshukov is a CG supervisor at Electronic Arts. He holds an M.S. from the University of California, Berkeley, where he was one of the creators of The Campanile Movie and real-time demo (1997). He was technical designer for the "bullet time" sequences in The Matrix (1999) and received an Academy Scientific and Technical Achievement Award for the image-based rendering technology used in the film. Borshukov led the development of photoreal digital actors for The Matrix sequels (2003) and received a Visual Effects Society Award for the design and application of the Universal Capture system in those films. Other film credits include What Dreams May Come (1998), Mission: Impossible 2 (2000), and Michael Jordan to the Max (2000). He is also a co-inventor of the UV pelting approach for parameterization and seamless texturing of polygonal or subdivision surfaces. He joined Electronic Arts in 2004 to focus on setting a new standard for facial capture, animation, and rendering in next-generation interactive entertainment. He conceived the Fight Night Round 3 concept and the Tiger Woods tech demos presented at Sony's E3 events in 2005 and 2006.
Tamy Boubekeur is a third-year Ph.D. student in computer science at INRIA in Bordeaux, France. He received an M.Sc. in computer science from the University of Bordeaux in 2004. His current research focuses on 3D geometry processing and real-time rendering. He has developed new algorithms and data structures for the 3D acquisition pipeline, publishing several scientific papers in the fields of efficient processing and interactive editing of large 3D objects, hierarchical space subdivision structures, point-based graphics, and real-time surface refinement methods. He also teaches geometric modeling and virtual reality at the University of Bordeaux.
Ralph Brunner graduated from the Swiss Federal Institute of Technology (ETH) Zürich with an M.Sc. degree in computer science. He left the country after the bear infestation made the major cities uninhabitable and has been working in California on the graphics stack of Mac OS X since then.
Iain started his career in flight simulation, when 250 polys per frame was state of the art. With the advent of consumer-level 3D hardware, he moved to writing game engines, with published titles including Machines and MotoGP 3. In 2005 he moved to the Developer Technology group at NVIDIA, which is the perfect place to combine his passions for games and 3D graphics.
Ignacio Castaño Aguado is an engineer in the Developer Technology group at NVIDIA. When not playing Go against his coworkers or hiking across the Santa Cruz Mountains with his son, Ignacio spends his time solving computer graphics problems that fascinate him and helping developers take advantage of the latest GPU technology. Before joining NVIDIA, Ignacio worked for several game companies, including Crytek, Relic Entertainment, and Oddworld Inhabitants.
Mark Colbert is a Ph.D. student at the University of Central Florida working in the Media Convergence Lab. He received both his B.S. and his M.S. in computer science from the University of Central Florida in 2004 and 2006. His current research focuses on user interfaces for interactive material and lighting design.
Keenan recently completed a B.S. in computer science at the University of Illinois at Urbana-Champaign, where he did research on GPU algorithms, mesh parameterization, and motion capture. As an intern on the NVIDIA Demo Team, he worked on the "Mad Mod Mike" and "Smoke in a Box" demos. His foray into graphics programming took place in 1991 at Nishimachi International School in Tokyo, Japan, where he studied the nuances of the LogoWriter turtle language. This summer he will travel to Kampala, Uganda, to participate in a service project through Volunteers for Peace.
Eugene d'Eon has been writing demos at NVIDIA since 2000, when he first joined the team as an intern, spending three months modeling, rigging, and rotoscoping the short film "Luxo Jr." for a real-time demo that was only shown once. After quickly switching to a more forgiving programming position, he has since been employing the most mathematical, overly sophisticated models available to solve the simplest of shading and simulation problems in NVIDIA's real-time demos. He constantly struggles between writing a physically correct shader and just settling for what "looks good." Eugene received an Honours B.Math. from the University of Waterloo, applied mathematics and computer science double major, and is occasionally known for his musical abilities (piano and Guitar Hero) and ability to juggle "Eric's Extension." Research interests include light transport, scattering, reflectance models, skin shading, theoretical physics, and mathematical logic. He never drives faster than c, and unlike most particles in the universe, neither his position nor his momentum can be known with any certainty. He never votes for someone who doesn't have a clear stance on the Axiom of Choice. Eugene uses Elixir guitar strings.
Bernard Deschizeaux received a master's degree in high energy physics in 1988 and a Ph.D. in particle physics in 1991. Since then he has worked for CGG, a French service company for the oil and gas industry, where he applies his high-performance computing skills and physics knowledge to solve seismic processing challenges. His positions within CGG have varied from development to high-performance computing and algorithm research. He is now in charge of a GPGPU project developing an industrial solution based on GPU clusters.
Franck Diard is a senior software architect at NVIDIA. He received a Ph.D. in computer science from the University of Nice Sophia Antipolis (France) in 1998. Starting with vector balls and copper lists on Amiga in the late 1980s, he then programmed on UNIX for a decade with Reyes rendering, ray tracing, and computer vision before transitioning to Windows kernel drivers at NVIDIA. His interests have always been around scalability (programming multi-core, multi-GPU render farms) applied to image processing and graphics rendering. His main contribution to NVIDIA has been the SLI technology.
After discovering that one can make more people's lives miserable by writing buggy software than becoming a tax collector, Frank Doepke decided to become a software developer. Realizing that evil coding was wrong, he set sail from Germany to the New World and has since been tracking graphic gems at Apple.
From 1999 to 2002, Henrik Dohlmann worked as a research assistant in the Image Group at the Department of Computer Science, University of Copenhagen, from which he later received his Cand. Scient. degree in computer science. Next, he took part in an industrial collaboration between the 3D-Lab at Copenhagen University's School of Dentistry and Image House. He moved to 3Dfacto R&D in 2005, where he now works as a software engineer.
Bryan entered the games industry in 1997, working for various companies in Seattle, including Sierra Online and Escape Factory. He has a master's degree from the University of Washington. In 2003 he joined NVIDIA and began teaching (and learning) high-end, real-time computer graphics. Having studied Japanese since 2000, Bryan convinced NVIDIA in 2004 to move him to Tokyo, where he has been supporting APAC developers ever since. If you are ever in Tokyo, give him a ring.
In 2001 Kenny Erleben received his Cand. Scient. degree in computer science from the Department of Computer Science, University of Copenhagen. He then worked as a fulltime researcher at 3Dfacto A/S before beginning his Ph.D. studies later in 2001. In 2004 he spent three months at the Department of Mathematics, University of Iowa. He received his Ph.D. in 2005 and soon thereafter was appointed assistant professor at the Department of Computer Science, University of Copenhagen.
Ryan has been a pioneer in music visualization for many years. While working at Nullsoft, he wrote many plug-ins for Winamp, most notably the popular MilkDrop visualizer. More recently, he spent several years as a member of the NVIDIA Demo Team, creating the "GeoForms" and "Cascades" demos and doing other GPU research projects.
Nolan Goodnight is a software engineer at NVIDIA. He works in the CUDA software group doing application and driver development. Before joining NVIDIA he was a member of the computer graphics group at the University of Virginia, where he did research in GPU algorithms and approximation methods for rendering with precomputed light transport. Nolan's interest in the fundamentals of computer graphics grew out of his work in geometric modeling for industrial design. He holds a bachelor's degree in physics and a master's degree in computer science.
Larry Gritz is director and chief architect of NVIDIA's Gelato software, a hardware-accelerated film-quality renderer. Prior graphics work includes being the author of BMRT; cofounder and vice president of Exluna, Inc. (later acquired by NVIDIA), and lead developer of their Entropy renderer; head of Pixar's rendering research group; a main contributor to PhotoRealistic RenderMan; coauthor of the book Advanced RenderMan: Creating CGI for Motion Pictures; and occasional technical director on several films and commercials. Larry has a B.S. from Cornell University and an M.S. and Ph.D. from The George Washington University.
John Hable is a rendering engineer at Electronic Arts. He graduated from Georgia Tech with a B.S. and M.S. in computer science, where he solved the problem of reducing the rendering time of Boolean combinations of triangle meshes from exponential to quadratic time. His recent work focuses on the compression problems raised by trying to render high-quality facial animation in computer games. Currently he is working on a new EA title in Los Angeles.
Earl Hammon, Jr., is a lead software engineer at Infinity Ward, where he assisted a team of talented developers to create the multiplatinum and critically acclaimed titles Call of Duty 2 and Call of Duty. He worked on Medal of Honor: Allied Assault prior to becoming a founding member of Infinity Ward. He graduated from Stanford University with an M.S. in electrical engineering, preceded by a B.S.E.E. from the University of Tulsa. His current project is Call of Duty 4: Modern Warfare.
Takahiro Harada is an associate professor at the University of Tokyo. He received an M.S. in engineering from the University of Tokyo in 2006. His current research interests include physically based simulation, real-time simulation, and general-purpose GPU computation.
Mark Harris is a member of the Developer Technology team at NVIDIA in London, working with software developers all over the world to push the latest in GPU technology for graphics and high-performance computing. His primary research interests include parallel computing, general-purpose computation on GPUs, and physically based simulation. Mark earned his Ph.D. in computer science from the University of North Carolina at Chapel Hill in 2003 and his B.S. from the University of Notre Dame in 1998. Mark founded and maintains www.GPGPU.org, a Web site dedicated to general-purpose computation on GPUs.
Evan Hart is a software engineer in the Developer Technology group at NVIDIA. Evan got his start in real-time 3D in 1997 working with visual simulations. Since graduating from The Ohio State University in 1998, he has worked to develop and improve techniques for real-time rendering, having his hands in everything from games to CAD programs, with a bit of drivers on the side. Evan is a frequent speaker at GDC and he has contributed to chapters in the Game Programming Gems and ShaderX series of books.
Milo Haan graduated with a degree in computer science from Comenius University in Bratislava, Slovakia. Currently he is a Ph.D. student in the Computer Science Department at Cornell University. His research interests include global illumination, GPU rendering, and numerical computations.
Jared Hoberock is a graduate student at the University of Illinois at Urbana-Champaign. He has worked two summers at NVIDIA as an intern and is a two-time recipient of the NVIDIA Graduate Fellowship. He enjoys spending time writing rendering software.
Lee Howes graduated with an M.Eng. in computing from Imperial College London in 2005 and is currently working toward a Ph.D. at Imperial. Lee's research relates to computing with FPGAs and GPUs and has included work with FFTs and financial simulation. As a distraction from education and to dabble in the realms of reality, Lee has worked briefly with Philips and NVIDIA.
Yuntao Jia is currently pursuing a Ph.D. in computer science at the University of Illinois at Urbana-Champaign. He is very interested in computer graphics, and his current research interests include realistic rendering (especially on the GPU), video and image processing, and graph visualizations.
Alexander Keller studied computer science at the University of Kaiserslautern from 1988 to 1993. He then joined the Numerical Algorithms Group at the same university and defended his Ph.D. thesis on Friday, the 13th of June, 1997. In 1998 he was appointed scientific advisor of mental images. Among four calls in 2003, he chose to become a full professor for computer graphics at the University of Ulm in Germany. His research interests include quasi-Monte Carlo methods, photorealistic image synthesis, ray tracing, and scientific computing. His 1997 SIGGRAPH paper "Instant Radiosity" can be considered one of the roots of GPGPU computing.
Alex is an undergraduate in the Department of Computational Mathematics and Cybernetics at the Moscow State University. He became interested in video games at the age of ten and decided that nothing else interested him that much. Currently he works as a member of NVIDIA's Developer Technology team implementing new techniques and effects for games and general-purpose computation on GPUs.
Peter Kipfer is a software engineer at Havok, where he works as part of the Havok FX team that is pioneering work in large-scale real-time physics simulation in highly parallel environments, such as multi-core CPUs or GPUs. He received his Ph.D. in computer science from the Universität of Erlangen-Nürnberg in 2003 for his work in the KONWIHR supercomputing project. He also worked as a postdoctoral researcher at the Technische Universität München, focusing on general-purpose computing and geometry processing on the GPU.
Rusty Koonce graduated from the University of Texas at Dallas with a degree in physics. He has worked on multiple shipped video game titles across a wide range of platforms, including console, PC, and Mac. Computer graphics has held his interest since his first computer, a TRS-80. Today he calls Austin, Texas, home, where he enjoys doing his part to "Keep Austin Weird."
Kees van Kooten is a software developer for Playlogic Game Factory. In 2006 he graduated summa cum laude for his master's degree at the Eindhoven University of Technology. The result of his master's project can be found in this book. His interests are closely related to the topics of his master's research: 3D graphics and real-time simulations. After working hours, Kees can often be found playing drums with "real" musicians.
Jaroslav Kivánek is an assistant professor at the Czech Technical University in Prague. He received his Ph.D. from IRISA/INRIA Rennes and the Czech Technical University (joint degree) in 2005. In 2003 and 2004 he was a research associate at the University of Central Florida. He received a master's in computer science from the Czech Technical University in Prague in 2001.
Bunny Laden graduated from the University of Washington with a Special Individual Ph.D. in cognitive science and music in 1989. She joined Apple in 1997, where she now writes documentation for Quartz, Core Image, Quartz Composer, and other Mac OS X technologies. She coauthored Programming with Quartz (Morgan Kaufmann, 2006) and Learning Carbon (O'Reilly, 2001). In her former life as an academician, she wrote articles on music cognition, musical acoustics, and other assorted topics.
Andrew Lauritzen recently received his B.Math. in computer science and is now completing a master's degree in computer graphics at the University of Waterloo. To date, he has completed a variety of research in graphics, as well as theoretical physics. His current research interests include lighting and shadowing algorithms, deferred rendering, and graphics engine design. Andrew is also a developer at RapidMind, where he works with GPUs and other high-performance parallel computers.
Scott is a senior engineer on the CUDA software team at NVIDIA. His previous commercial projects include the game BattleSphere for the Atari Jaguar; Genesis, the first molecular modeling system for home computers, for the Atari ST; and Folderol, the first distributed computing project targeted at the protein folding problem. Scott has been writing video games since 1971, when he played a Star Trek game on a mainframe and he was instantly hooked. In a former life, he picked up a B.S. in biology from Siena College and a Ph.D. in biochemistry from The Pennsylvania State University. In addition, he wrote a chapter for ShaderX and coedited a book on computational methods of protein structure prediction.
Ignacio Llamas is a software engineer in NVIDIA's Developer Technology group. Before joining NVIDIA, Ignacio was a Ph.D. student at Georgia Tech's College of Computing, where he did research on several topics within computer graphics. In addition to the exciting work he does at NVIDIA, he also enjoys snowboarding.
Charles Loop works for Microsoft Research in Redmond, Washington. He received an M.S. in mathematics from the University of Utah in 1987 and a Ph.D. in computer science from the University of Washington in 1992. His graphics research has focused primarily on the representation and rendering of smooth free-form shapes, including subdivision surfaces, polynomial splines and patches, and algebraic curves and surfaces.
Charles also works on interactive modeling and computer vision techniques. Lately, his efforts have gone into GPU algorithms for the display of curved objects.
Since graduating in 1995 with a master's in computer science applied on art and aesthetic, Tristan Lorach has developed a series of 3D real-time interactive installations for exhibitions and events all over the world. From the creation of a specific engine for digging complex galleries into a virtual solid, to the conception of new 3D human interfaces for public events, Tristan has always wanted to fill the gap between technology and artistic or ergonomic ideas. Most of his projects (such as "L'homme Transformé" and "Le Tunnel sous l'Atlantique") were presented in well-known exhibition centers like Beaubourg and Cité des Sciences in Paris. Now Tristan works at NVIDIA on the Technical Developer Relations team, based in Santa Clara, California.
David Luebke is a research scientist at NVIDIA. He received an M.S. and Ph.D. in computer science in 1998 from the University of North Carolina under Frederick P. Brooks, Jr., following a B.A. in chemistry from the Colorado College. David spent eight years on the faculty of the University of Virginia before leaving in 2006 to help start the NVIDIA Research group. His research interests include real-time rendering, illumination models, and graphics architecture.
Kenny is a lead engine programmer at Electronic Arts' UK Studio. His Ph.D. introduced the use of real-time 3D for information visualization on consumer hardware, including a novel recursive perspective projection technique. Over the past ten years he has shipped games using high-end graphics technologies including voxels, PN patches, displacement mapping and clipmaps. In between shipping games for EA's flagship Harry Potter franchise, he is also involved in developing new intellectual properties.
Jefferson Montgomery holds a B.A.Sc. in engineering physics and an M.Sc. in computer science from the University of British Columbia. He is currently a member of the World Wide Visualization Group at Electronic Arts, tasked with adapting advanced techniques to the resource constraints faced by current game teams and producing real-time demonstrations such as those at Sony's E3 presentations in 2005 and 2006.
Kevin Myers is part of the Developer Technology group at NVIDIA, where he helps game developers make full use of the GPU. He regularly presents at GDC and has been published in a previous ShaderX book. He is native to California and received his B.S. in computer science from Santa Clara University. His favorite food is the sandwich, especially the Cuban Sandwich—but only if it's greasy enough.
Hubert Nguyen works at NVIDIA, where he manages the developer education program, which helps developers push the graphical envelope of their applications. Prior to that, he spent his time on NVIDIA's Demo Team, searching for novel effects that showed off the features of the latest GPUs. His work appears on the previous GPU Gems covers. Before joining NVIDIA, Hubert was at 3dfx interactive, the creators of Voodoo Graphics, as a developer technology engineer. He had his first contact with 3dfx while working on 3D engines in the R&D department of Cryo Interactive, a video game company in Paris. Hubert started to program 3D graphics in 1991 when he was involved in the European demoscene, where he and his "Impact Studios" team ranked number one at the world's largest PC demo competition: "The Party 1994," in Denmark.
Lars Nyland is a senior architect at NVIDIA, focusing on computationally related issues for GPU architectures. He earned his Ph.D. and A.M. in computer science at Duke University (1991 and 1983, respectively). He followed his graduate work with a 12-year research position at the University of North Carolina, working on parallel computing (languages, compilers, algorithms, and applications) and image-based rendering, where he developed the DeltaSphere range scanner device (now sold by 3rdTech). Prior to joining NVIDIA in 2005, he was an associate professor of computer science at the Colorado School of Mines in Golden, Colorado.
Oskari Nyman is an undergraduate student in the Computer Science and Engineering Department at Helsinki University of Technology. His roots belong to the mod scene, where he first started programming at the age of fifteen. His interests lie in real-time rendering and game programming in general.
Manuel M. Oliveira is a faculty member at UFRGS, in Brazil. He received his Ph.D. in computer science from the University of North Carolina at Chapel Hill in 2000. Before joining UFRGS, he was an assistant professor at SUNY Stony Brook from 2000 to 2002. His research interests include real-time rendering, representation and rendering of surface details, surface reconstruction, and image-based rendering.
John D. Owens is an assistant professor of electrical and computer engineering at the University of California, Davis, where he leads research projects in graphics hardware/software and GPGPU. Prior to his appointment at Davis, John earned his Ph.D. (2002) and M.S. (1997) in electrical engineering from Stanford University. At Stanford he was an architect of the Imagine Stream Processor and a member of the Concurrent VLSI Architecture Group and the Computer Graphics Laboratory. John earned his B.S. in electrical engineering and computer sciences from the University of California, Berkeley, in 1995.
Gustavo Patow received a degree in physics from the Universidad Nacional de La Plata, Argentina, and earned his Ph.D. at the Universitat Politècnica de Catalunya at Barcelona, Spain, under the supervision of Xavier Pueyo and Àlvar Vinacua. His thesis topic was the inverse design of reflector surfaces for luminaire design, and his current research continues both in the inverse rendering set of problems and the efficient usage of modern GPUs to achieve real-time photorealistic rendering. He currently holds an associate professor position at the University of Girona, Spain.
Fabio Pellacini is an assistant professor in computer science at Dartmouth College. His research focuses on algorithms for interactive, high-quality rendering of complex environments and for artist-friendly material and lighting design to support more effective content creation. Prior to joining academia, Pellacini worked at Pixar Animation Studios on lighting algorithms, where he received credits on various movie productions. Pellacini received his Laurea degree in physics from the University of Parma (Italy), and his M.S. and Ph.D. in computer science from Cornell University.
Fabio Policarpo is a senior software engineer working on Perpetual Entertainment's latest project: Star Trek Online. He graduated in computer science from Universidade Federal Fluminense in Rio, Brazil, and is the author of a few game programming books, including a chapter in GPU Gems. His main research interests are related to real-time special effects for games, including graphics, physics, and animation.
Jan Prins is professor and chair of the Department of Computer Science at the University of North Carolina at Chapel Hill. He was a cofounder of Digital Effects Inc. and contributed to the film Tron. Prins received his Ph.D. in 1987 in computer science from Cornell University. He has been on the computer science faculty at UNC Chapel Hill since 1987 and is a member of the bioinformatics and computational biology program.
He was a visiting professor at the Institute of Theoretical Computer Science at ETH Zürich from 1996 to 1997, in the area of scientific computing. His research interests center on high-performance computing, including algorithm design, parallel computer architecture, programming languages, and applications.
Eric Risser is a graduate student of computer science at Columbia University. Previously he attended the University of Central Florida, where he had been involved with real-time graphics programming and research for the better part of four years. The bulk of his expertise is in the area of image-based, real-time rendering techniques centering on per-pixel displacement mapping. His research has been presented at the Symposium on Interactive 3D Graphics and Games, GDC, and SIGGRAPH. For more information, visit www.ericrisser.com.
Gilberto Rosado is a graduate of DigiPen Institute of Technology, where he studied video game programming for four years. While at DigiPen, Gil was the graphics programmer on the 2005 Independent Games Festival finalist, Kisses. Gil is currently at Rainbow Studios, where he works as a graphics and technology programmer on killer new games. He has also been published in the book ShaderX4. When not playing the latest games, you might find Gil at the gym working out or at the local dance studio practicing his Salsa moves.
Christophe Schlick is a professor in computer science at the University of Bordeaux 2 (France), where he has headed the Applied Mathematics and Computer Science Department during the last five years. He received his Ph.D. in 1992 for his work on BRDF models and Monte Carlo techniques, and his research interests have embraced many aspects of computer graphics, including participating media, procedural textures, spline and wavelet curves and surfaces, implicit surfaces, and more recently, point-based modeling and rendering. He currently holds a senior researcher position at INRIA, the French National Institute for Research in Computer Science and Control.
Elizabeth Seamans completed her Ph.D. in computer science at Stanford University in 2005 before cofounding Exapath to write GPU-accelerated scanning libraries. She is now a software engineer at Juniper Networks, where she keeps parallel computing resources busy.
Shubho is a Ph.D. student in the computer science department at University of California, Davis, where he is a member of the Institute for Data Analysis and Visualization. His current research focuses on parallel data structures and algorithms and their applications to various areas of computer graphics. Shubho received his M.Sc. and B.Sc. in mathematics from Indian Institute of Technology, Kharagpur, in 1998 and 1996, respectively.
Tiago Sousa is a self-taught game and graphics programmer who has worked at Crytek as an R&D graphics programmer for the last four years. He has worked on the "Far Cry: The Project" demo and most recently on Crysis, where he developed most of the visual effects, including water/underwater rendering and all post-effects, such as motion blur and camera environmental effects. Before joining Crytek, he cofounded a pioneering game development team in Portugal and very briefly studied computer science at Instituto Superior Técnico, which he hopes to finish one day. He spends his time mostly thinking out of the box, inventing original and creative techniques for making pretty images.
In 1998 Yury graduated from Zaporozhye State Engineering Academy (Ukraine), Department of Electronics, where he specialized in microprocessor systems. As a student he became keen on computer graphics and low-level optimization and decided to make this hobby his trade. He now works at the NVIDIA Moscow office, where he is engaged in development of new graphics technologies.
Martin Stich is a graphics software engineer at mental images in Berlin, where he works on rendering algorithms for the RealityServer product. His research interests include real-time rendering, rasterization, and ray tracing. Before joining the company in 2006, he developed real-time image generation software for air traffic control simulation systems. He holds a degree in computer science from the University of Ulm.
Hanqiu Sun received her M.S. in electrical engineering from the University of British Columbia and her Ph.D. in computer science from the University of Alberta, Canada. She has published more than one hundred refereed technical papers in prestigious VR/CG journals, book chapters, and international conferences. She has served as guest editor of MIT's Presence and Journal of Computer Animation and Virtual Worlds, program cochair of ACM VRST 2002, organization cochair of Pacific Graphics 2005 and CGI 2006, conference general chair of ACM VRCIA 2006, and a member of numerous international program committees. Her current research interests include virtual and augmented reality, interactive graphics/animation, hypermedia, computer-assisted surgery, Internet-based navigation, telemedicine, and realistic haptic simulation.
László Szirmay-Kalos is the head of the computer graphics group of the Faculty of Electrical Engineering and Information Technology at the Budapest University of Technology and Economics. He received a Ph.D. in 1992 and full professorship in 2001 in computer graphics. He has also spent some time at the University of Girona, the Technical University of Vienna, and the University of Minnesota as a guest lecturer or researcher. His research area is Monte Carlo global illumination algorithms and their GPU implementation. He has published more than one hundred papers, scripts, and book chapters on this topic. He is the leader of the illumination package of the GameTools EU-FP6 project. He is a member of Eurographics, where he served three years on the executive committee.
Sarah is a software engineer on NVIDIA's Developer Technology team, where she works primarily on implementing new rendering and simulation techniques that exploit the latest hardware, and helping game developers to incorporate these techniques into their games. Before joining NVIDIA, Sarah was a Ph.D. candidate at Georgia Tech, where she also got her master's degree in computer science.
Diogo Teixeira is a computer graphics enthusiast with special interests in game development. His appetite for low-level 2D and 3D computer graphics grew while he was still in high school. Being an avid gamer eventually led him to start his game development career in early 2000, when he joined a pioneer Portuguese team creating a third-person action adventure called Yamabushi. In 2003 he was a project lead in a community game project called RCmania, a multiplatform racing game. In 2005 he interrupted his studies at the University of Lisbon to join Move Interactive and work on a game called Ugo Volt for PC and next-generation consoles.
Alex Telea received his Ph.D. in visualization in 2000 from the Eindhoven University of Technology, where he currently works as assistant professor in the field of visualization and computer graphics. His main research interests are data visualization, texture-based rendering methods, numerical methods for image and data processing, shape simplification, and software visualization and reverse engineering. He has coauthored more than 70 papers in international publications.
David Thomas received his M.Eng. and Ph.D. in computer science from Imperial College in 2001 and 2006, respectively. He likes Imperial so much that he stayed on, and is now a postdoctoral researcher in the Custom Computing group. Research interests include FPGA-based Monte Carlo simulations, algorithms and architectures for uniform and nonuniform random number generation, and financial computing.
Ken Turkowski started his career by designing programmable hardware for graphics acceleration, and then developing algorithms that utilized the hardware well. An applied mathematician at heart, he then concentrated his efforts on developing efficient software for a variety of graphical applications: texture mapping, antialiasing, shading, panoramas, image processing, video transformations, camera/lens modeling, collisions, surface modeling, and outline fonts—at companies such as Ampex, Compression Labs, CADLINC, Apple, Media Machines, Fakespace Labs, Adobe, and Google. He specializes in algorithms that are faster, are more robust, and use less memory than traditional algorithms. He is active in SIGGRAPH as an Electronic Theater contributor, paper author, and Silicon Valley Chapter chair.
Tamás Umenhoffer is a Ph.D. student at the Faculty of Electrical Engineering and Information Technology at the Budapest University of Technology and Economics. His research topic is the computation of global illumination effects on the GPU. His submission was a finalist at the Graphics Meets Games Competition of EG 2006. He is an active member of the GameTools EU-FP6 project.
Gino van den Bergen is lead programmer at Playlogic Game Factory. He holds a Ph.D. in computer graphics from Eindhoven University of Technology. He is the author of the book Collision Detection in Interactive 3D Environments (Morgan Kaufmann). Gino is the creator of SOLID, a software library for collision detection, which has been applied successfully in top-selling game console titles and CAM applications.
Carsten Wächter studied computer science at Ulm University from 1998 to 2004. He then pursued his Ph.D. studies under the supervision of Alexander Keller; he started to work at mental images in 2007. His research interests include real-time ray tracing, global illumination, and quasi-Monte Carlo methods. He has been an active member of the European demo scene since 1999.
Takeshi Yamanouchi graduated from Kyushu Institute of Technology with a master's degree in computer science in 1995. That same year he joined SEGA Corporation and has since been engaged in the development of arcade games at AM R&D Dept. #2. His most recent work was on graphics, shaders, and network programming for Virtua Fighter 5. His latest interest is in the face of his daughter, who is now one year old. He wonders if he can implement this beautiful subsurface scattering in a 60 fps real-time game. While writing his chapter, he was helped with his English by Robert Gould, who belongs to AMplus R&D Dept.
Cyril Zeller works in the Developer Technology group at NVIDIA, where he explores and promotes all the new ways of leveraging modern GPUs in real-time graphics and simulation, as well as in all the new application fields opened up by CUDA. Before joining NVIDIA, Cyril was developing games at Electronic Arts. He received a Ph.D. in computer vision from École Polytechnique, France.
Fan Zhang received his B.S. and M.S. in computational mathematics from Jilin University, China, in 2000 and 2002, respectively. He is currently a Ph.D. candidate in the Department of Computer Science and Engineering, The Chinese University of Hong Kong. His main research interests include real-time shadow rendering and GPU-based rendering techniques.
Renaldas Zioma is working on rendering technologies for the upcoming Battlefield: Bad Company at EA/Digital Illusions CE. In the past he developed real-time strategy games, some previous-gen console games, and sensorless motion recognition software; he even coded a couple of small games using ZX Spectrum assembly when he was a kid. Currently he is wasting his spare time by rendering things on homebrew PSP devkit and Amiga 1200, mostly with guys from The Black Lotus demogroup. Otherwise he would go hiking! He has previously published articles in ShaderX2, ShaderX4, and AI Game Programming Wisdom 3.
- Part I: Geometry
- Chapter 1. Generating Complex Procedural Terrains Using the GPU
- Chapter 2. Animated Crowd Rendering
- Chapter 3. DirectX 10 Blend Shapes: Breaking the Limits
- Chapter 4. Next-Generation SpeedTree Rendering
- Chapter 5. Generic Adaptive Mesh Refinement
- Chapter 6. GPU-Generated Procedural Wind Animations for Trees
- Chapter 7. Point-Based Visualization of Metaballs on a GPU
- Part II: Light and Shadows
- Chapter 10. Parallel-Split Shadow Maps on Programmable GPUs
- Chapter 11. Efficient and Robust Shadow Volumes Using Hierarchical Occlusion Culling and Geometry Shaders
- Chapter 12. High-Quality Ambient Occlusion
- Chapter 13. Volumetric Light Scattering as a Post-Process
- Chapter 8. Summed-Area Variance Shadow Maps
- Chapter 9. Interactive Cinematic Relighting with Global Illumination
- Part III: Rendering
- Chapter 14. Advanced Techniques for Realistic Real-Time Skin Rendering
- Chapter 15. Playable Universal Capture
- Chapter 16. Vegetation Procedural Animation and Shading in Crysis
- Chapter 17. Robust Multiple Specular Reflections and Refractions
- Chapter 18. Relaxed Cone Stepping for Relief Mapping
- Chapter 19. Deferred Shading in Tabula Rasa
- Chapter 20. GPU-Based Importance Sampling
- Part IV: Image Effects
- Chapter 21. True Impostors
- Chapter 22. Baking Normal Maps on the GPU
- Chapter 23. High-Speed, Off-Screen Particles
- Chapter 24. The Importance of Being Linear
- Chapter 25. Rendering Vector Art on the GPU
- Chapter 26. Object Detection by Color: Using the GPU for Real-Time Video Image Processing
- Chapter 27. Motion Blur as a Post-Processing Effect
- Chapter 28. Practical Post-Process Depth of Field
- Part V: Physics Simulation
- Chapter 29. Real-Time Rigid Body Simulation on GPUs
- Chapter 30. Real-Time Simulation and Rendering of 3D Fluids
- Chapter 31. Fast N-Body Simulation with CUDA
- Chapter 32. Broad-Phase Collision Detection with CUDA
- Chapter 33. LCP Algorithms for Collision Detection Using CUDA
- Chapter 34. Signed Distance Fields Using Single-Pass GPU Scan Conversion of Tetrahedra
- Chapter 35. Fast Virus Signature Matching on the GPU
- Part VI: GPU Computing
- Chapter 36. AES Encryption and Decryption on the GPU
- Chapter 37. Efficient Random Number Generation and Application Using CUDA
- Chapter 38. Imaging Earth's Subsurface Using CUDA
- Chapter 39. Parallel Prefix Sum (Scan) with CUDA
- Chapter 40. Incremental Computation of the Gaussian
- Chapter 41. Using the Geometry Shader for Compact and Variable-Length GPU Feedback