Book Cover

Book Contents

About the Authors

About the Editors


Andrew Aksyonoff 
Andrew's FAQ on realtime software rendering, created back in 1998, is still recognized by Russian graphics programmers. This background allowed him to work on KDlab's award-winning "Perimeter" RTS title in 2002. He's currently the technical director at SkyFallen, working on "The Blood Magic" RPG. Andrew manages research and development of the inhouse engine and provides support to the companies licensing it.

Elisabeth André
Elisabeth André is a full professor for Computer Science at Augsburg University, Germany, where she is chairing the laboratory for Multimedia Concepts and Applications. She has been teaching various courses on AI and Computer Games at her university and has been on the programme committee of several games-related events including: ICEC'2004, the academic track of "Computer Science and Magic" in association with Game Convention Developer Conference 2005, Intetain'2005 and Edutainment'2006. Futhermore, she has been conducting various projects on educational game environments for the EU including Puppet (1998-2001) and eCircus (planned start early in 2006).

Barnabás Aszódi
Barnaba's Aszo'di is a Ph.D. student of the computer graphics programmer at the Budapest University of Technology and Economics. He works on multimedia systems and GPU algorithms aiming at photo-realistic real-time rendering. 

Wessam Bahnassi
Wessam is a hardcore old-time gamer. Games are one thing in life that interests him the most.
Actually, he is interested in everything, ranging from electronics to music to architecture (his current study) to novelty, and ultimately to programming and shaders! Being an experienced C++ programmer for over six years, Wessam has done many real-time 3D projects based on Direct3D. That is when Microsoft rewarded him as a Most Valuable Professional (MVP) in DirectX. Currently, he is a lead programmer at In|Framez, where he is employing his experience in designing and programming the DirectSkeleton 3D engine.

Philippe Beaudoin
Philippe is working on his Ph.D. at the University of Montreal while teaching computer graphics at the Ecole Polytechnique. His research interest is in 3D rendering and animation and focuses mainly on technologies to increase quality and performances of real-time applications and video games. Before he went back to school, Philippe worked as a hardware architect at Matrox Graphics where he developed various vertex and pixel shader technologies. He also developed video games for various consoles while working at Digital Fiction.

Kevin Björke 

Florian Born
After his studies of mathematics and physics, Florian worked as a teacher before he started at Vulpine in 2000. In 2003 he and some collegues from Vulpine founded Trinigy, a german middleware provider for the Vision game engine.
Like many others, Florian started his career in computer programming 20 years ago on a C64. Later, on a PC, he was especially fascinated by 3D graphics and the technology behind it.

Jordi Catŕ

Jordi is a Senior Software Engineer at the University of Girona (participating in the GameTools European Project) and Leader of his own Software Development company. He works adding new illumination techniques (like Obscurances) in 3D Game Engines (Crystal Space, Ogre) at Girona Graphics Group. His research interest is in 3D rendering and focuses to increase quality and perfomance of 3D real-time applications, video games and DCC from a Software Engineering point of view.

Yung-feng Chiu

Yung-feng is a Software Engineer at XGI Technology Inc. in Taiwan where he works on 3D demos with the newest shader technology. He interests in GPU algorithms aiming at lifelike real-time rendering and offline photo-realistic rendering. 

Martin Christen

Martin started programming on a C16 back in 1985. He developed many shareware games for the Amiga and MacOS. In 1996 he founded Algomedia Software, a game company releasing MacOS titles. Today he works at GEONOVA  the 3D geoinformation company located in Switzerland.
He is programming the 3D engine for terrain visualization. In his spare time he writes demos and tutorials for the OpenGL Shading Language at

Carsten Dachsbacher
Carsten Dachsbacher is a Ph.D. student in computer graphics at theUniversity of Erlangen-Nuremberg, Germany. His research focuses on interactive, hardware-assisted computer graphics; in particular he is working on interactive global illumination techniques, proceduralmodels for rendering photo-realistic virtual terrains and point-basedrendering. He worked as a freelancer for various (game) companiesprogramming mainly real-time 3D graphics and published some of hiswork at conferences and in books and magazines.

Joachim Diepstraten
Joachim is a PhD Student at the Visualization and Interactive Systems Group at the German University Stuttgart in Computer Science. He was interested in realtime Computer Graphics already at the age of 15 by starting to write his own EGA and VGA graphics and rasterization routines first in PASCAL later with C/ASM under the now infamous DOS operating system. With the death of DOS, he moved on to Sun's Java to program a realtime software 3D engine in Java and even a simple realtime raytracer. But he noticed soon that hardware graphics accelerators are the key to maximum interactive performance. Now he is doing research on finding solutions for interactive mobile graphics, squeezing the latest out of the programmable features of graphics hardware, non-photorealstic-rendering and rendering of everyday & natural objects using graphics hardware for achieving real-time performance by following his personal slogan:If it can not be done in real-time it is impractical!

Bryan  Dudash

Graduating Virginia Tech, Bryan made the big move across the country to work in Seattle for the now defunct Sierra Online.  After working at Sierra and getting his Master's at the University of Washington, he needed a change.  Desiring a smaller company, he joined a startup Xbox game company Escape Factory, working hard on an unreleased Unreal Engine license title.  Publisher issues forced the cancellation, and he joined NVIDIA in 2003 as a member of the Developer Technology(devtech) team.  In late 2004 he made a slightly larger move to Tokyo, Japan.  He spend his days(and nights) educating developers on the black art of GPU programming, studying Japanese, eating sushi, and fighting off ninjas.

Mike Eissele
After graduating in computer science, Mike joined the Visualization and Interactive Systems Group as a PhD student at the University of Stuttgart. He started programming on the C64 where he coded real-time graphic demos. For hardware accelerated graphics programming he started with OpenGL but switched to DirectX since the introduction of the Vertex- and PixelShader paradigms. 

Dustin Franklin

Sergi Funtané
Sergi is a computer engineering student at the University of Girona, Spain. He developed an OpenGL port for Playstation2. He is currently working on GPU algorithms to improve graphics realism in video games and DCC applications for the Girona Graphics Group in the University of Girona. He is participating in the Gametools european project.

Holger Grün
Holger started his love affair with 3d real-time graphics back in the 1993 when it was all about writing perspectively correct software texture mappers. In 1997 he joined an UK based game middleware developer as a research engineer. After that he headed the development team of a now defunct German games company and  afterwards worked for a simulation company developing CIGs (computer image generator) software. Holger now works for Intel as technical marketing engineer - his love affair with 3d graphics still intact.

Justin Henley

Christian Kleinhuis
Since the early 90`s Christian is addicted to realtime computer animation when he got its Amiga500 by the age of 13. Has played a lot with (realtime-)fractal generation, and after spending years as Web-Developer is now back on track aspiring a degree in Computer Science at the University of Bonn working as a visualization engineer in fluid dynamics. 

Janne Kontkanen

Janne has fifteen years of background in computer graphics. It all began as a hobby in around 1990 and later grew into a master’s degree and a career in industry.  His work experience ranges from scientific computing (Finnish IT center for science) to developing real-time computer graphics middleware (Hybrid Graphics Ltd.) and giving lectures and training in software development and design (Tieturi). Currently he is working for his PhD related to illumination and rendering in Helsinki University of Technology. His research interest and expertise covers the rendering techniques used in both real-time and offline graphics. 

Samuli Laine

Samuli Laine is currently a full-time PhD student at Helsinki University of Technology. He is on study leave from Hybrid Graphics Ltd., where he has worked for several years developing real-time graphics software, offline visibility preprocessing tools and graphics hardware architecture design. Most of Laine’s current research is concentrated on efficient computation of soft shadows in offline renderers.

István Lazányi
István is a Ph.D. student at the Budapest University of Technology and Economics since 2003. His research interests include material models global illumination algorithms, and GPU programming for realistic rendering. 

Ping Man Lam

Ping-Man Lam received the B.Eng. degree in electronic from City University of
Hong Kong in 2002. He is currently a PhD student in the Department of Electronic Engineering, City University of Hong Kong. His research interests include global illumination algorithms and GPU programming. He has several years GPU programming experience.

Chi-Sing Leung
Chi Sing Leung received the Ph.D. degree in computer science from the Chinese University of Hong Kong. He is currently an Associate Professor in the Department of Electronic Engineering, City University of Hong Kong.   His research interests include neural computing, communications, global illumination algorithms and GPU programming.  He has published over 50 international journal papers.  From 1995 to 1997, he worked on the bidirectional associative memory model.  He proved that the recalling processing of higher order BAM is unstable and proposed a statistical method to analysis the behaviour of higher order BAM.   In 1997, he proposed a neural based data protection method for vector quantization data over noisy channels.  From 1998 to 2002, he worked on the property of extended Kalman filtering learning in neural networks.  From 2001, he has been working on several projects related to compressing image based rendering data. In 2005, he received the 2005 IEEE Transactions on Multimedia Prize Paper Award for his paper titled, “The Plenoptic Illumination Function'” published in 2002. His research interests include global illumination algorithms and GPU programming.  Besides, from 2001 to 2005, he provided consultancy service for DBS bank (Hong Kong) Limited.

Morgan McGuire

Alex Méndez-Feliu
Alex is a PhD Student in the Girona Graphics Group at the University of Girona. His work aims to apply global illumination techniques and its simplified forms, like obscurances, in video game and real-time environments. He is participating in the Gametools project of the VI European Framework.

Jason  Mitchell
Jason is a Software Engineer at Valve Software in Bellevue, Washington where he works on cutting edge graphics techniques.  Prior to joining Valve, Jason was the team lead of the 3D Application Research Group at ATI Research where he worked for eight years.
Martin Mittring

Michael Nischt
Michael is a student researcher in Computer Science and Multimedia at the University of Augsburg, Germany. Since 2001, he has been supervising practical courses on computer games and animated agents. Currently, he is completing his Master’s thesis on an agent-based interface to graphics engines. From the very beginning of his studies, the animation and rendering of virtual characters has been one of his main research interests. While conducting practical projects in this area, he has achieved a great deal of experience in utilizing both OpenGL and DirectX as well as their shading languages for hardware accelerated graphics programming.

Masahiko Nitanda

Masahiko liked playing a PC game every day when he was a boy. And he is a Japanese game programmer now.
Recently, He developed a 3D RPG game for PSP. And previously, he developed an action game for XBOX. Various troubles will be encountered if concerned with game development. But he believes that it can overcome by the love to game development, and compassion for others.

Manuel M. Oliveira

Manuel M. Oliveira received his Ph.D. in Computer Science from the University of North Carolina at Chapel Hill. He is currently an Associate Professor at Instituto de Informática, Universidade Federal do Rio Grande do Sul (UFRGS), in Brazil. Before joining the Faculty at UFRGS, he worked for two years as an Assistant Professor of Computer Science at the State University of New York at Stony Brook. His interests include image-based modeling and rendering, innovative uses of graphics hardware, real-time rendering, 3D photography, surface reconstruction from point clouds, medical applications of imaging technologies, and building virtual replicas of real environments. His homepage is

Eric Paquette

Eric Paquette is a professor at the École de technologie supérieure engineering school in the Software & IT Engineering department. His research interests include realistic image synthesis, simulation of natural phenomena, programmable graphics hardware, and visualization. Professor Paquette received his B.Sc. in Computer Science from Université de Sherbrooke, Canada, his M.Sc. degree in Computer Science from Université de Montréal, Canada, and his Ph.D. degree in Computer Science from Université de Montréal, Canada and Université Joseph Fourier, France.

Kurt Pelzer
Kurt Pelzer is a Senior Software Engineer at Piranha Bytes, where he works on the PC game Gothic 3. Kurt was involved in the development of Gothic and the top-selling Gothic II (awarded as “RPG of the Year” in Germany during 2001 and 2002, respectively). In 2003 followed the add-on Gothic II - The Night of the Raven. Prior he was a Senior Programmer at Codecult, developed Codecult's 3D-Engine Codecreatures and built several real-time simulations and tech-demos on that technology (for example, a simulation of the Shanghai “Transrapid” track for SIEMENS AG, a tech-demo for NVIDIA’s GeForce 4 Ti launch and the well-known Codecreatures Benchmark Pro). Kurt has published in ShaderX 2, GPU Gems, GPU Gems 2, and Game Programming Gems 4.

Emil Persson
Emil holds a Master degree in computer science and engineering from Luleĺ university of technology. After his studies Emil joined ATI in 2004 where he's working with top game developers to deliver the best performance and latest technology in their games. Emil also works on the ATI SDK providing technical sample applications and papers. On his spare time Emil runs the site where he provides demo applications showing various techniques, tricks or just plain eye-candy.

Fábio Policarpo

Pierre Poulin

Pierre Poulin has been professor since 1994 in the department of Computer Science (IRO) at the Universite de Montreal. His research interests include realistic and real-time rendering, simulation of natural phenomena, image-based modeling and rendering, visualization, and animation.

Aras Pranckevicius

The same day he got his first ZX Spectrum, Aras wrote some mosaic-drawing program. Apparently that left him impressed and since then then he's been doing graphics demos, small games and similar stuff on various platforms. Aras has worked in a couple of software companies, with works ranging from databases/web to motion recognition to videogames. He's got Master's degree in computer science, has a nice family and right now works as a senior programmer in an 'ordinary software' company. He still devotes all of his spare time to realtime computer graphics and demoscene.

Gilberto Rosado 
Gilberto Rosado is a graduate of DigiPen Institute of Technology, where he studied video game programming for 4 years. His senior year game project at DigiPen, Kisses, was a finalist at the 2005 Independent Games Festival. After working at Pipeworks Software on Godzilla: Save the Earth, Gil joined Rainbow Studios where he now works as a graphics programmer on killer new games. Gil has also been published in AI Game Programming Wisdom 2.

Mateu Sbert

Mateu Sbert is professor and head of the Institute of Informatics and Applications at the University of Girona. He is author of around 100 technical papers. His research interests include the application of Monte Carlo and Integral Geometry techniques to Radiosity and Global

Thorsten Scheuermann
Thorsten is a software engineer in ATI's 3D Application Research Group where he works on graphics demos and novel rendering techniques as part of ATI's Demo Team. Prior to working at ATI he was a member of the Effective Virtual Environments research group at the University of North Carolina at Chapel Hill, which gave him the opportunity to play with all sorts of expensive VR toys and to create sickness-inducing immersive games. Thorsten received a Master's degree in Computer Science from UNC and previously studied at the University of Karlsruhe in Germany. 

Daniel Scherzer

Daniel Scherzer is master student at the Vienna University of Technology with his research
interest in the field of real-time rendering. He began his computer life by playing on a C64. What started out as a way to avoid homework ("Mum, I'm working on my computer!"), became a serious addiction with his first PC. At some point he took up programming to boost the abilities of his computer and still tries to do so.

Christian Schueler
Christian Schüler is software engineer at Phenomic Game Development in Ingelheim, Germany, where he drives engine development for the upcoming Spellforce 2. He has been coding since the C64 age, and actively works in the games industry since 2002.

Tibor Schütz  

Marco Spoerl
Just as everyone else, Marco started programming way back on a C64. After buying a PC (actually just because of his affection to chainsaw-wielding space marines) he got hold of computer graphics. After receiving his diploma in computer science he worked at Codecult Software, contributing to the Codecreatues Engine and the Codecreatures-Benchmark-Pro. After a short walk on the wild side as a freelance software developer, he's currently earning his keep working on driving training simulators for trains, trucks, cars, and tanks. Actually, he's seriously thinking about opening his own game studio. 

Nicolau Sunyer
Nicolau is a PhD student at the University of Girona, Spain. He is now working on GPU accelerated global illumination techniques (Radiosity, Obscurances,...). He is currently member of the Girona Graphics Group whose aim is to improve the graphics realism in video games and DCC applications. He is participating in the Gametools european project.

Vlad Stamate
Vlad became passionate with computer games ever since he discovered them on
a Spectrum Sinclair 128+. Games were the road to learning computer programming. After studying in a Computer Science High School he graduated
with a BSc degree in Graphic Design from Richmond College. After graduation
he started working in the R&D department of PowerVR technologies as a Design
Engineer. Currently Vlad works for Sony Computer Entertainment Europe as part of their Technology Group and is involved in software development for Sony game related products.

Jean-François has worked at both ends of the graphics hardware spectrum. = He is currently employed at Gameloft's Montreal studio where he works on OpenGL E= S capable mobile platforms. He has recently completed his M.Sc. at the University of Montreal where he worked on high-quality soft shadows for games and othe= r real-time applications, as well as general-purpose computation on the GPU.
Before starting his graduate studies, Jean-François worked at Matrox in t= he Imaging group.

László Szirmay-Kalos

László is a full professor and the head of the Computer Graphics Group at the Budapest University of Technology and Economics. He was graduated from this university in 1987 and received Ph.D. degree in 1990. He is the author of 150 technical papers and 5 books. His current research interests include global illumination algorithms and the application of the GPU to speed up these methods.  

Takashi Imagire

Takashi has been a professional game programmer for 5 years and has mainly done work of PlayStation & PlayStation2.
Currently, he is programming real-time 3D graphics in his sparetime, while focusing on the newest shader technology. A big number of articles and demos on shader programming can be found on his website (Japanese). His goal is to publish his demos immediately after the release of new shader technology. 

Damian Trebilco

Damian holds a first class honours degree in software engineering from Queensland University of Technology. As a result of his dissertation work into simulating emotion in virtual characters, he joined the games company Auran in late 2001. Here he works on graphics and shader based systems like the Bridge-IT demo used in the Nvidia NV30 launch. In his spare time Damian works on the OpenGL debugging tool GLIntercept. (

Oles V. Shishkovtsov

Liang Wan

Michael Wimmer

Dr. Michael Wimmer is an assistant professor at the Institute of Computer Graphics and Algorithms of the Vienna University of Technology, where he received his MSc in 1997 and PhD in 2001. His current research interests are real-time rendering, virtual and augmented reality, computer games, real-time visualization of urban environments and rendering of vegetation, and he has (co)authored several scientific papers in the above-mentioned fields. He is also teaching courses on 3D computer games and real-time rendering.

Tien-Tsin Wong

Tien-Tsin Wong is an associate professor in the Department of Computer Science & Engineering in the Chinese University of Hong Kong (CUHK). He has been programming for the last 17 years, including writing publicly available codes/libraries/demos/toolkit (check his homepage) and codes for all his graphics research. He works on GPU techniques, rendering, image-based relighting, natural phenomenon modeling, and multimedia data compression. He proposed a method to simulate dust accumulation (IEEE CGA 1995) and other surface imperfections (SIGGRAPH 2005). He also proposed, the apparent BRDF, one of the earliest techniques for relighting (precomputed lighting) in 1997. He is a SIGGRAPH author. Besides academic papers, he has written game development related articles in "Graphics Gems V", "Graphics Programming Methods", "Shader X^3 and "Shader X^4". Recently, he has been working on projects for general purpose usage of GPU, such as evolutionary computing (such as genetic algorithms) on GPU, and discrete wavelet transform on GPU.
He received the "IEEE Transaction on Multimedia Prize Paper Award 2005" and "CUHK Young Researcher Award 2004".

Cyril Zeller 

Renaldas Zioma
Renald Zioma has been driven (mad) by computer graphics since he saw ZX Spectrum. After learning assembly and writing Tetris clone for his ZX, he switched to PC, finished school, wrote couple small non-commercial games, gained experience with object-oriented programming and design while working at the software development company, received BS degree in Computer Science from Kaunas University of Technology and returned to his roots while working as a professional game programmer for the last 1.5 years. Recently he has finished demo of 3D fighting game based on real-time motion recognition for Interamotion, LLC. On the sparetime he is programming demos, games and organizing small demo/gamescene related events in Lithuania. 

© 2001 - 2005 Wolfgang Engel, Carlsbad, CA, USA