GPU Gems : Programming Techniques, Tips and Tricks for Real-Time Graphics

by
Edition: 1st
Format: Hardcover
Pub. Date: 2004-03-22
Publisher(s): Addison-Wesley Professional
List Price: $74.99

Rent Textbook

Select for Price
There was a problem. Please try again later.

New Textbook

We're Sorry
Sold Out

Used Textbook

We're Sorry
Sold Out

eTextbook

We're Sorry
Not Available

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

bull; Removes the mystery behind complex effects and reveals the full potential of programmable GPUs (graphics processing units) bull; Covers some of the coolest and most difficult effects, such as simulating fire, water, and waving blades of grass bull; Contains advice from experts from all the major graphics companies

Author Biography

Randima (Randy) Fernando is Manager of Developer Education at NVIDIA.



Table of Contents

Foreword
Preface
Contributors
Natural Effects
Effective Water Simulation from Physical Models
Goals and Scope
The Sum of Sines Approximation
Authoring
Runtime Processing
Conclusion
References
Rendering Water Caustics
Introduction
Computing Caustics
Our Approach
Implementation Using Open GL
Implementation Using a High-Level Shading Language
Conclusion
References
Skin in the "Dawn" Demo
Introduction
Skin Shading
Lighting the Scene
How Skin Responds to Light
Implementation
Conclusion
References
Animation in the "Dawn" Demo
Introduction
Mesh Animation
Morph Targets
Skinning
Conclusion
References
Implementing Improved Perlin Noise
The Noise Function
The Original Implementation
Deficiencies of the Original Implementation
Improvements to Noise
How to Make Good Fake Noise in Pixel Shaders
Making Bumps Without Looking at Neighboring Vertices
Conclusion
References
Fire in the "Vulcan" Demo
Creating Realistic Flames
Implementing Animated Sprites
Particle Motion
Performance
Post-Rendering Effects
Conclusion
Rendering Countless Blades of Waving Grass
Introduction
Overview
Preparation of the Grass Objects
Animation
Conclusion
Further Reading
Simulating Diffraction, Jos Stam, (Alias Systems).What Is Diffraction?Implementation
Results
Conclusion
References
Lighting and Shadows
Efficient Shadow Volume Rendering
Introduction
Program Structure
Detailed Discussion
Debugging
Geometry Optimizations
Fill-Rate Optimizations
Future Shadows
References
Cinematic Lighting
Introduction
A Direct Lighting Illumination Model
The Uberlight Shader
Performance Concerns
Conclusion
References
Shadow Map Antialiasing
Introduction
Percentage-Closer Filtering
A Brute-Force Implementation
Using Fewer Samples
Why It Works
Conclusion
References
Omnidirectional Shadow Mapping
Introduction
The Shadow-Mapping Algorithm
Implementation
Adding Soft Shadows
Conclusion
References
Generating Soft Shadows Using Occlusion Interval Maps
The Gas Station
The Algorithm
Creating the Maps
Rendering
Limitati
Table of Contents provided by Publisher. All Rights Reserved.

Excerpts

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 Gemsis 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 forGPU 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 inGPU 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 onGPU Gemshope 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 Gemslooks 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 a

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.