Register your product to gain access to bonus material or receive a coupon.
GPU Gems: Programming Techniques, Tips and Tricks for Real-Time Graphics
- This product currently is not for sale.
- Copyright 2004
- Dimensions: 7-3/8x9-1/4
- Pages: 816
- Edition: 1st
- ISBN-10: 0-321-22832-4
- ISBN-13: 978-0-321-22832-1
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:
Contributors are from the following universities and corporations:
The accompanying CD-ROM includes complementary examples and sample programs.
Downloadable Sample Chapter
Chapter 3 was such a huge demand from our readers that the authors have agreed to share with you an additional free chapter from their book.
Download the sample chapters related to this title:
Table of Contents
I. NATURAL EFFECTS.
II. LIGHTING AND SHADOWS.
IV. IMAGE PROCESSING.
V. PERFORMANCE AND PRACTICALITIES.
VI. BEYOND TRIANGLES.
Now is an excellent time to be working in the field of computer graphics. Over the past five years, GPU technology has advanced in astounding ways, and at an explosive pace. The rendering rate, as measured in pixels per second, has been approximately doubling every six months during those five years. A factor of two is certainly exciting enough, but more exciting is the wonder of compounding. Five years represents the doubling of performance ten times-that's two to the tenth power, a factor of one thousand!
Not only has performance increased, but also the quality of computation and the flexibility of graphics programming have steadily improved during that same time. Five years ago, PCs and computer workstations had graphics accelerators, not graphics processing units (GPUs). The implication was that a graphics accelerator does simply that: it accelerates graphics. Furthermore, the word accelerator implied that the computer would perform exactly the same rendering operations as before, only faster. As graphics accelerators were replaced by GPUs, we abandoned the old concept of graphics acceleration. We advanced to graphics processing, embracing the idea of processors that enable new graphics algorithms and effects.
We have entered the era of programmable GPUs. The graphics hardware pipeline, which had not previously changed significantly in twenty years, was broken down to its component, hard-wired elements and rebuilt out of programmable, parallel-pipelined processors. In a hard-wired pipeline, triangle vertices are transformed and lit, triangles are rasterized, and pixels are shaded with diffuse lighting, specular exponentiation, fog blending, and frame-buffer blending. In a programmable pipeline, each of these operations is abstracted to its component memory accesses and mathematical operations. A programmer can still write a program that calculates the same results as a hard-wired pipeline (and in fact, such a program is often the first one a student programmer writes for a programmable processor!), but the opportunity presented is so much greater than this.
The first effects of fast, programmable GPUs are subtle. Previously difficult graphics problems become much more tractable through the application of one thousand-fold performance increases. Offline rendering techniques become more practical for interactive applications. Historically, brute force has been a popular algorithmic approach; simply casting a graphics problem in a way that it can run on a GPU is an unsubtle application of brute force-it works, but it leaves opportunity on the table.
Beyond that, algorithm development gets more interesting. Graphics programmers can now experiment with new algorithms and techniques that would not have been practical on a slower, single-threaded serial processor such as a CPU. The parallel-stream-processing nature of the GPU, coupled with flexibility and programmability, allows new algorithms to be developed and invites experimentation. Any computationally demanding problem-not just graphics-that can take advantage of large-scale parallelism, larger memory bandwidth, and geometric performance growth is a good candidate for GPU implementation. As an industry, we're still learning which problems will benefit most from GPU solutions.
The true beneficiaries of the programmable GPU revolution are the computer graphics algorithm designer, the researcher, the application developer, and ultimately the end user or consumer-the gamer, the moviegoer, and so on. GPU Gems is a timely book, as the GPU programming field is young and vibrant, and many developers are reinventing the same techniques again and again. This volume contains straightforward applications of known techniques to a structure more amenable to GPU execution, as well as innovative new algorithms and effects that were not previously possible.
At this time in the history of GPU programming, many problems remain unsolved and many challenges remain unmet. Consequently, this first volume of GPU Gems is a compendium of approaches and examples of work carried out so far, rather than a cookbook of completed effects to be plugged into applications. This collection will allow programmers to benefit from the exciting progress already made, and it will enable tomorrow's developers to stand on the shoulders of giants, the pioneers of programming GPUs. It's up to you to take the next steps of innovation!
Download the Index
file related to this title.
ONE MONTH ACCESS!
Get unlimited 30-day access to thousands of Books & Training Videos about technology, professional development and digital media If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months.
Other Things You Might Like
- OpenGL ES 3.0 Programming Guide, 2nd Edition
- Book $39.99
- 3ds Max in 24 Hours, Sams Teach Yourself
- Book $35.99