Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 33000000018409 | T385 G686 2008 | Open Access Book | Gift Book | Searching... |
On Order
Summary
Summary
One of the biggest developments in computer hardware in the last few years has been the introduction of and rapid improvement in a new generation of Graphics Processing Units (GPUs) with much more power and flexibility than the CPU. With the arrival of the new hardware that supports Windows Vista's graphics, there is renewed interest in rendering GPU Gem 3 continues the format of the first two bestselling editions, with many chapters that detail cutting-edge programming techniques from some of the world's top experts, including people at Adobe, Apple, Microsoft, Electronic Arts, SEGA, Cornell, UC Davis, and UNC. Chapters in this book explain techniques in rendering that go beyond anything used yet in movies or games.
Author Notes
Hubert Nguyen, Manager of Developer Education at NVIDIA, is a graphics engineer who worked in the NVIDIA Demo Team before moving to his current position. His work is featured on the covers of GPU Gems (Addison-Wesley, 2004) and GPU Gems 2 (Addison-Wesley, 2006).
Excerpts
Excerpts
It has been only three years since the first GPU Gems book was introduced, and some areas of real-time graphics have truly become ultrarealistic. Chapter 14, "Advanced Techniques for Realistic Real-Time Skin Rendering," illustrates this evolution beautifully, describing a skin rendering technique that works so well that the data acquisition and animation will become the most challenging problem in rendering human characters for the next couple of years. All this progress has been fueled by a sustained rhythm of GPU innovation. These processing units continue to become faster and more flexible in their use. Today's GPUs can process enormous amounts of data and are used not only for rendering 3D scenes, but also for processing images or performing massively parallel computing, such as financial statistics or terrain analysis for finding new oil fields. Whether they are used for computing or graphics, GPUs need a software interface to drive them, and we are in the midst of an important transition. The new generation of APIs brings additional orthogonality and exposes new capabilities such as generating geometry programmatically. On the computing side, the CUDA architecture lets developers use a C-like language to perform computing tasks rather than forcing the programmer to use the graphics pipeline. This architecture will allow developers without a graphics background to tap into the immense potential of the GPU. More than 200 chapters were submitted by the GPU programming community, covering a large spectrum of GPU usage ranging from pure 3D rendering to nongraphics applications. Each of them went through a rigorous review process conducted both by NVIDIA's engineers and by external reviewers. We were able to include 41 chapters, each of which went through another review, during which feedback from the editors and peer reviewers often significantly improved the content. Unfortunately, we could not include some excellent chapters, simply due to the space restriction of the book. It was difficult to establish the final table of contents, but we would like to thank everyone who sent a submission. Intended Audience For the graphics-related chapters, we expect the reader to be familiar with the fundamentals of computer graphics including graphics APIs such as DirectX and OpenGL, as well as their associated high-level programming languages, namely HLSL, GLSL, or Cg. Anyone working with interactive 3D applications will find in this book a wealth of applicable techniques for today's and tomorrow's GPUs. Readers interested in computing and CUDA will find it best to know parallel computing concepts. C programming knowledge is also expected. Trying the Code Samples GPU Gems 3 comes with a disc that includes samples, movies, and other demonstrations of the techniques described in this book. You can also go to the book's Web page to find the latest updates and supplemental materials: developer.nvidia.com/gpugems3 . Excerpted from GPU Gems 3 All rights reserved by the original copyright owners. Excerpts are provided for display purposes only and may not be reproduced, reprinted or distributed without the written permission of the publisher.Table of Contents
Foreword | p. xxvii |
Preface | p. xxix |
Contributors | p. xxxiii |
Part I Geometry | p. 3 |
Chapter 1 Generating Complex Procedural Terrains Using the GPU | p. 7 |
1.1 Introduction | p. 7 |
1.2 Marching Cubes and the Density Function | p. 7 |
1.3 An Overview of the Terrain Generation System | p. 12 |
1.4 Generating the Polygons Within a Block of Terrain | p. 20 |
1.5 Texturing and Shading | p. 29 |
1.6 Considerations for Real-World Applications | p. 35 |
1.7 Conclusion | p. 37 |
1.8 References | p. 37 |
Chapter 2 Animated Crowd Rendering | p. 39 |
2.1 Motivation | p. 39 |
2.2 A Brief Review of Instancing | p. 40 |
2.3 Details of the Technique | p. 42 |
2.4 Other Considerations | p. 50 |
2.5 Conclusion | p. 51 |
2.6 References | p. 52 |
Chapter 3 DirectX 10 Blend Shapes: Breaking the Limits | p. 53 |
3.1 Introduction | p. 53 |
3.2 How Does It Work? | p. 56 |
3.3 Running the Sample | p. 66 |
3.4 Performance | p. 66 |
3.5 References | p. 67 |
Chapter 4 Next-Generation SpeedTree Rendering | p. 69 |
4.1 Introduction | p. 69 |
4.2 Silhouette Clipping | p. 69 |
4.3 Shadows | p. 76 |
4.4 Leaf Lighting | p. 81 |
4.5 High Dynamic Range and Antialiasing | p. 85 |
4.6 Alpha to Coverage | p. 85 |
4.7 Conclusion | p. 88 |
4.8 References | p. 91 |
Chapter 5 Generic Adaptive Mesh Refinement | p. 93 |
5.1 Introduction | p. 94 |
5.2 Overview | p. 95 |
5.3 Adaptive Refinement Patterns | p. 96 |
5.4 Rendering Workflow | p. 98 |
5.5 Results | p. 100 |
5.6 Conclusion and Improvements | p. 103 |
5.7 References | p. 104 |
Chapter 6 GPU-Generated Procedural Wind Animations for Trees | p. 105 |
6.1 Introduction | p. 105 |
6.2 Procedural Animations on the GPU | p. 106 |
6.3 A Phenomenological Approach | p. 106 |
6.4 The Simulation Step | p. 113 |
6.5 Rendering the Tree | p. 117 |
6.6 Analysis and Comparison | p. 118 |
6.7 Summary | p. 119 |
6.8 References | p. 120}}12 |
7.1 Metaballs, Smoothed Particle Hydrodynamics, and Surface Particles | p. 124 |
7.2 Constraining Particles | p. 127 |
7.3 Local Particle Repulsion | p. 135 |
7.4 Global Particle Dispersion | p. 140 |
7.5 Performance | p. 145 |
7.6 Rendering | p. 146 |
7.7 Conclusion | p. 147 |
7.8 References | p. 148 |
Part II Light And Shadows | p. 151 |
Chapter 8 Summed-Area Variance Shadow Maps | p. 157 |
8.1 Introduction | p. 157 |
8.2 Related Work | p. 158 |
8.3 Percentage-Closer Filtering | p. 159 |
8.4 Variance Shadow Maps | p. 161 |
8.5 Summed-Area Variance Shadow Maps | p. 174 |
8.6 Percentage-Closer Soft Shadows | p. 178 |
8.7 Conclusion | p. 181 |
8.8 References | p. 181 |
Chapter 9 Interactive Cinematic Relighting with Global Illumination | p. 183 |
9.1 Introduction | p. 183 |
9.2 An Overview of the Algorithm | p. 184 |
9.3 Gather Samples | p. 186 |
9.4 One-Bounce Indirect Illumination | p. 188 |
9.5 Wavelets for Compression | p. 189 |
9.6 Adding Multiple Bounces | p. 192 |
9.7 Packing Sparse Matrix Data | p. 193 |
9.8 A GPU-Based Relighting Engine | p. 195 |
9.9 Results | p. 200 |
9.10 Conclusion | p. 201 |
9.11 References | p. 201 |
Chapter 10 Parallel-Split Shadow Maps on Programmable GPUs | p. 203 |
10.1 Introduction | p. 203 |
10.2 The Algorithm | p. 205 |
10.3 Hardware-Specific Imp |