Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet or computer – no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera, scan the code below and download the Kindle app.
GPU Gems: Programming Techniques, Tips and Tricks for Real-Time Graphics Hardcover – March 22 2004
- ISBN-100321228324
- ISBN-13978-0321228321
- Edition1st
- PublisherAddison-Wesley Professional
- Publication dateMarch 22 2004
- LanguageEnglish
- Dimensions18.42 x 3.81 x 23.5 cm
- Print length816 pages
Customers who bought this item also bought
Product description
From the Inside Flap
This book is an extensive and practical collection of articles about real-time computer graphics, accumulating the knowledge and experience of experts in both industry and academia. Building, in the same style, upon the wealth of the great "Gems" books already available, GPU Gems is a collection of short chapters. However, a number of key characteristics make this book unique and valuable to today's developers as they attempt to harness the ever-increasing power of the graphics processing unit (GPU).
First and foremost, this book focuses squarely on real-time programmable graphics--specifically, on techniques relevant to GPUs. Each chapter was carefully selected to present ideas and techniques that are directly useful in interactive applications, such as computer games. The chapters provide insight and understanding, rather than focusing on low-level API calls or specific mathematical tricks. Furthermore, each chapter is packed with numerous full-color diagrams and images to illustrate and drive home key concepts. Finally, the experience and diversity of the contributors help readers gain a broad understanding, as well as a certain confidence that the advice they are getting comes from experts in the field.
NVIDIA's strongest asset is its people: the depth and quality of their collective expertise inspired the initial idea for GPU Gems. With so much knowledge and expertise at hand, we felt that the thoughts and insights of the teams that brought us many recent advances in real-time graphics would make for a wonderfully instructive book. So, we started the project with an internal call for participation.
Having the good fortune to work with people from leading game development houses, tool developers, film studios, and academic institutions who are shaping the future of real-time computer graphics, we also wanted to highlight their real-world contributions in GPU Gems. Hence, a wider, public call for participation allowed us to coalesce a great amount of talent and refreshing perspective into this volume.
Whether you're creating new effects, architecting a graphics engine, or squeezing out the last bits of performance, we hope that this book provides valuable guidance and saves you from some of the challenges the authors faced on their own projects. All of us who worked on GPU Gems hope that it will help you to adopt new ideas and take your projects to the next level of graphical realism.
Our Intended AudienceThis book provides intermediate and advanced readers with useful information that will help them in their projects. Focusing beyond the fundamentals of high-level shading, GPU Gems looks at how to take existing projects further by removing the mystery behind complex effects and advanced GPU programming. With the rapid evolution of real-time shading languages, the collection of algorithms available to real-time graphics developers is larger than ever. By compiling and distributing the information in this book, our goal is to make high-quality, high-performance graphics more accessible to a wider audience that includes game developers, technical directors, professors, and students.
Trying the ExamplesMany of the chapters in this book include code samples to make their subject matter more concrete. The authors used whichever shading language they wanted, so the code samples ended up in DirectX 9's High-Level Shader Language (HLSL) or Cg, which were the only two high-level shading languages widely in use during this project. Almost everything that is presented can be applied to either language, as well as to languages that came later, such as the OpenGL Shading Language. The code samples are available on the CD that accompanies this book, along with standalone examples wherever possible. This makes it easy for you to integrate or experiment with the various examples.
From the Back Cover
GPU Gems has won a prestigious Front Line Award from Game Developer Magazine. The Front Line Awards recognize products that enable faster and more efficient game development, advancing the state of the art.
FULL COLOR THROUGHOUT!
“This collection of articles is particularly impressive for its depth and breadth. The book includes product-oriented case studies, previously unpublished state-of-the-art research, comprehensive tutorials, and extensive code samples and demos throughout.”—Eric Haines, Author of Real-Time Rendering“GPU Gems is a cool toolbox of advanced graphics techniques. Novice programmers and graphics gurus alike will find the Gems practical, intriguing and useful.”
—Tim Sweeney, Lead Programmer of Unreal at Epic Games
GPU Gems is a compilation of articles covering practical real-time graphics techniques arising from the research and practice of cutting-edge developers. It focuses on the programmable graphics pipeline available in today’s graphics processing units (GPUs) and highlights quick and dirty tricks used by leading developers, as well as fundamental, performance-conscious techniques for creating advanced visual effects. The contributors and editors, collectively, bring countless years of experience to enlighten and propel the reader into the fascinating world of programmable real-time graphics.
Major topics covered include:
- Natural effects
- Lighting and shadows
- Materials
- Image processing
- Performance and practicalities
- Beyond triangles
Contributors are from the following universities and corporations:
- Alias Systems
- Brown University
- Croteam
- Cyan Worlds
- Hochschule Bremen
- Industrial Light & Magic
- iXBT.com
- Monolith Productions
- New York University
- Novarama
- NVIDIA
- Paralelo Computacao
- Piranha Bytes
- Pixar Animation Studios
- Siemens Medical Solutions
- Softimage Co.
- Softlab-NSK
- Sony Pictures Imageworks
- Stanford University
- UC Davis
- UNC-Chapel Hill
- Universitat Pompeu Fabra
- University of Utah
- University of Waterloo
The accompanying CD-ROM includes complementary examples and sample programs.
About the Author
Randima (Randy) Fernando is Manager of Developer Education at NVIDIA.
Excerpt. © Reprinted by permission. All rights reserved.
This book is an extensive and practical collection of articles about real-time computer graphics, accumulating the knowledge and experience of experts in both industry and academia. Building, in the same style, upon the wealth of the great "Gems" books already available, GPU Gems is a collection of short chapters. However, a number of key characteristics make this book unique and valuable to today's developers as they attempt to harness the ever-increasing power of the graphics processing unit (GPU).
First and foremost, this book focuses squarely on real-time programmable graphics--specifically, on techniques relevant to GPUs. Each chapter was carefully selected to present ideas and techniques that are directly useful in interactive applications, such as computer games. The chapters provide insight and understanding, rather than focusing on low-level API calls or specific mathematical tricks. Furthermore, each chapter is packed with numerous full-color diagrams and images to illustrate and drive home key concepts. Finally, the experience and diversity of the contributors help readers gain a broad understanding, as well as a certain confidence that the advice they are getting comes from experts in the field.
NVIDIA's strongest asset is its people: the depth and quality of their collective expertise inspired the initial idea for GPU Gems. With so much knowledge and expertise at hand, we felt that the thoughts and insights of the teams that brought us many recent advances in real-time graphics would make for a wonderfully instructive book. So, we started the project with an internal call for participation.
Having the good fortune to work with people from leading game development houses, tool developers, film studios, and academic institutions who are shaping the future of real-time computer graphics, we also wanted to highlight their real-world contributions in GPU Gems. Hence, a wider, public call for participation allowed us to coalesce a great amount of talent and refreshing perspective into this volume.
Whether you're creating new effects, architecting a graphics engine, or squeezing out the last bits of performance, we hope that this book provides valuable guidance and saves you from some of the challenges the authors faced on their own projects. All of us who worked on GPU Gems hope that it will help you to adopt new ideas and take your projects to the next level of graphical realism.
Our Intended Audience
This book provides intermediate and advanced readers with useful information that will help them in their projects. Focusing beyond the fundamentals of high-level shading, GPU Gems looks at how to take existing projects further by removing the mystery behind complex effects and advanced GPU programming. With the rapid evolution of real-time shading languages, the collection of algorithms available to real-time graphics developers is larger than ever. By compiling and distributing the information in this book, our goal is to make high-quality, high-performance graphics more accessible to a wider audience that includes game developers, technical directors, professors, and students.
Trying the Examples
Many of the chapters in this book include code samples to make their subject matter more concrete. The authors used whichever shading language they wanted, so the code samples ended up in DirectX 9's High-Level Shader Language (HLSL) or Cg, which were the only two high-level shading languages widely in use during this project. Almost everything that is presented can be applied to either language, as well as to languages that came later, such as the OpenGL Shading Language. The code samples are available on the CD that accompanies this book, along with standalone examples wherever possible. This makes it easy for you to integrate or experiment with the various examples. Updated sample code, as well as additional supplementary materials, is available at the book's Web site: http://developer.nvidia.com/GPUGems/.
Randima (Randy) Fernando
NVIDIA Corporation
Product details
- Publisher : Addison-Wesley Professional; 1st edition (March 22 2004)
- Language : English
- Hardcover : 816 pages
- ISBN-10 : 0321228324
- ISBN-13 : 978-0321228321
- Item weight : 1.45 kg
- Dimensions : 18.42 x 3.81 x 23.5 cm
- Best Sellers Rank: #1,328,082 in Books (See Top 100 in Books)
- #442 in Digital Video
- #809 in Web Graphics
- #878 in Graphics & Visualization Textbooks
- Customer Reviews:
About the author
Morgan McGuire is an associate professor of Computer Science at Williams College.
He’s contributed to products including the Skylanders, Call of Duty, Marvel Ultimate Alliance, and Titan Quest series of video games series, the E Ink display used in the Amazon Kindle, the PeakStream GPU computing architecture acquired by Google, and NVIDIA GPUs. Morgan has published papers on high-performance rendering and computational photography in SIGGRAPH, High Performance Graphics, the Eurographics Symposium on Rendering, Interactive 3D Graphics and Games, and Non-Photorealistic Animation and Rendering. He is a Visiting Professor at NVIDIA Research, the founding Editor-in-Chief of the Journal of Computer Graphics Techniques, the project manager for the G3D Innovation Engine. He previously chaired the ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games and the ACM SIGGRAPH Symposium on Non-Photorealistic Animation and Rendering. He is the author or coauthor of Computer Graphics: Principles & Practice 3rd Edition, The Graphics Codex, Creating Games: Mechanics, Content, and Technology, and chapters of several GPU Gems, ShaderX and GPU Pro volumes.
Customer reviews
- 5 star4 star3 star2 star1 star5 star91%6%0%0%3%91%
- 5 star4 star3 star2 star1 star4 star91%6%0%0%3%6%
- 5 star4 star3 star2 star1 star3 star91%6%0%0%3%0%
- 5 star4 star3 star2 star1 star2 star91%6%0%0%3%0%
- 5 star4 star3 star2 star1 star1 star91%6%0%0%3%3%
Top reviews from Canada
There was a problem filtering reviews right now. Please try again later.
- Reviewed in Canada on April 11, 2004Hard core graphics programming is definitely an area that separates the men from the boys. If your idea of graphics programming is making a ball bounce across the screen in Flash or Powerpoint, avoid this book. If you are a die hard programmer with a strong mathematical background looking to create some really kick a33 effects, this book is made for you.
The background stuff: There are just under 50 authors that have collaborated to create this book. Just about all of them have a Ph.D from big name schools and I believe every one of them has at least a Master's degree. Most, but not all are folks from NVIDIA. The whole book is about 800 pages including intro/indexes et al.
I really liked the book, but there's two things wrong with it. 1) If you don't have a VERY strong background in Graphics programming, you will be utterly clueless what's going on. There's No middle ground. 2) You need a pretty powerful graphics card to work through the examples, which, considering the target audience isn't unfair for them to assume. I have a fairly powerful card on my desktops, but my laptop just doesn't cut it and that's kind of a pain if you read on the run like I do.
As far as negative comments go, that's it.
So what's cool about it? The EFFECTS! Like I mentioned, if there's a cool special effect in a video game or movie, this book shows you how to do it. To summarize a few:
1) Uru: Ages Beyond Myst. If you are familiar with the game and the large bodies of water that are employed, Chapter 1 explains it in depth. There's a good discussion of Gerstner waves , vertex shading and overall simulation models.
2) Fire in the Vulcan. This effect was "Inspired by the Balrog creature in <I>The Lord of the Rings</I> movies, our goal was to display a monster that would be the source of raging flames..." Different variations of this theme have been around for a while and just about any gamer will be familiar with it. It's much more complex than the previously mentioned effect, but it's also more much compelling.
3) Shadow Mapping. Virtually every driving/racing game you've played employs extensive use of Shadow Mapping. The book dedicates 3 Chapters (12, 13 & 14) to the subject and it's discussion is superb. While I don't personally find this the most interesting topic, it's probably the best written area of the book.
4) Glow - Very Very cool. The scenario is the Tron 2.0 video game, but it's absolutely amazing. Although there was very little math here and the discussion was pretty much theory, I had a little (see a LOT) of difficulty re-creating the effects. The code accompanying the book includes everything for the chapter, but recreating my Cityscape wasn't happening. In all fairness though I was pretty excited with the effect and go into coding before reading it another time or two like I should have.
5) One last really impressive area is Filtering. There are many apps where the UI is important but ancillary nonetheless. When I fire up XDesktop, I don't need everything pulsing and glowing doing neat stuff but eating up processor cycles. On the other hand, video games better perform well and anything video centric better be smooth, fast and cool.
All in all I think this book is first rate. The effects absolutely rock, all of them are cool, and the picture quality in the book is superb. Just about every cool effect you'll want to deal with it covered in depth here and you won't leave the table hungry. I really can't emphasize enough though, this isn't a book for hobbyists. Much of the text is written primarily in symbolic math grammar and some of the simpler math involves manipulating Jacobian matricies for instance. If you want to really polish your graphics skills, this book is for you.
- Reviewed in Canada on April 6, 2004I can't think of a topic that is more well-suited to a gems-style book than shaders, and given how important shaders have become in graphics and game development, I've been looking forward to this book since it was first announced.
The book consists of 42 articles covering techniques available on modern programmable GPUs. The articles were written by the most impressive collection of authors I've seen. Many of them are from NVIDIA, with the rest being from game development studios and other leaders in the graphics industry, both in academia and commercial development. Each chapter is approximately 15-20 pages long, which allows for greater depth than most gems-style books.
The topics covered include lighting, shadows, materials, image processing, performance tuning, water, fire, grass, skin (from the Dawn demo), and nontraditional uses of the GPU. The examples use either HLSL or Cg (and thankfully not assembly level shaders). Unfortunately, the OpenGL Shading Language was not complete at the time of the book's writing, but the examples should port easily.
As should be obvious from the NVIDIA logo on the cover, ATI wasn't involved with this book. Not surprisingly then, many of the demo programs included on the CD won't work on ATI hardware. This is unfortunate, since ATI hardware seems to be more popular at the high end right now, so many readers won't be able to run a lot of the demos. However, the techniques themselves should be readily portable.
As a nice bonus, the book is printed in full-color, which is definitely a welcome change as it makes it easier to visualize the results.
This is one of the most timely and relevant books currently available for graphics and game development. I highly recommend it to anyone involved with either.
- Reviewed in Canada on April 27, 2004Addison-Wesley and nVIDIA went all out on this book. Every page is color. This means all of the code samples, graphics, everything, is in color. This is not only an impressive trick, it also makes a book on computer graphics a lot easier to read. To understand what a particular algorithm is trying to do with color you needn't go to the center of the book, the graphic is right there.
The content of the book is somewhat mixed. It's done as a collection of papers so the writing tends to vary from verbose to terse. For example the chapter on depth-of-field covers five different techniques in 15 pages with 13 medium to large graphics. That's impressive compression, but it means that it is very terse and the chapter amounts to little more than an overview. The very next chapter, on high-quality filtering, weighing in at 25 pages has a better balance of overview and detail.
Despite it's inconsistencies the book is still a wonderful resource and, frankly, a nice coffee table book to boot. It's even got some unintentionally funny parts, like the section header before page 3 that shows the most un-natural looking monster you have ever seen with the title 'Natural Effects'. Hardly. Still, a great book and a fun read. Bravo AW and nVIDIA.
- Reviewed in Canada on May 14, 2004One of the rare books I found helpfull, it goes through important details and doesn't stop at junks. This book should be a university reference that teach real-time special effects.
I highly advise it to 3D and game programmers.
Top reviews from other countries
- Mr. KokoReviewed in the United Kingdom on September 1, 2019
5.0 out of 5 stars Good as new
Verified PurchaseThe product arrived good as new, only trace that was betraying the second hand nature was the CD pocket that was unsealed.
Really happy with this purchase, as this book otherwise cost thrice as much.
-
appReviewed in Japan on April 20, 2004
5.0 out of 5 stars 中身ぎっしり
Verified Purchase全編カラーな上、各章シェーダコード、基本理論、参考文献となる
論文がしっかり挙げられてます。
章立ては下記のようになっており42のチャプターがあります。
●Natural effects
●Lighting and shadows
●Materials
●Image processing
●Performance and practicalities
●Beyond triangles
サンプルは著者によってDirectX、OpenGLと分かれてますが、シェーダ
コード自体はDirectXならHLSL、OpenGLならCgとなってます。
基本的にCgならHLSLと相互に移行はそんなに難しくないので基本
的に本文が読めてれば問題ないでしょう。
nVIDIAが協力してるだけあってGeforce FX向き(RADEONでも動きます
があまり浮動小数点テクスチャを使うようなサンプルは無いかも)。