GPU gems

Addison-Wesley, c2004-

  • 3

大学図書館所蔵 件 / 23



Vol.3:edited by Hubert Nguyen

Vol.3:Attached Material: 1 computer laser optical disk




"The GPU Gems series features a collection of the most essential algorithms required by Next-Generation 3D Engines."-Martin Mittring, Lead Graphics Programmer, CrytekThis third volume of the best-selling GPU Gems series provides a snapshot of today's latest Graphics Processing Unit (GPU) programming techniques. The programmability of modern GPUs allows developers to not only distinguish themselves from one another but also to use this awesome processing power for non-graphics applications, such as physics simulation, financial analysis, and even virus detection-particularly with the CUDA architecture. Graphics remains the leading application for GPUs, and readers will find that the latest algorithms create ultra-realistic characters, better lighting, and post-rendering compositing effects. Major topics includeGeometry Light and Shadows Rendering Image Effects Physics Simulation GPU ComputingContributors are from the following corporations and universities:3DfactoAdobe SystemsAppleBudapest University of Technology and EconomicsCGGVeritasThe Chinese University of Hong KongCornell UniversityCrytekCzech Technical University in PragueDartmouth CollegeDigital Illusions Creative EntertainmentEindhoven University of TechnologyElectronic ArtsHavokHelsinki University of TechnologyImperial College LondonInfinity WardJuniper NetworksLaBRI-INRIA, University of Bordeauxmental imagesMicrosoft ResearchMove InteractiveNCsoft CorporationNVIDIA CorporationPerpetual EntertainmentPlaylogic Game FactoryPolytimeRainbow StudiosSEGA CorporationUFRGS (Brazil)Ulm UniversityUniversity of California, DavisUniversity of Central FloridaUniversity of CopenhagenUniversity of GironaUniversity of Illinois at Urbana-ChampaignUniversity of North Carolina Chapel HillUniversity of TokyoUniversity of WaterlooSection Editors include NVIDIA engineers: Cyril Zeller, Evan Hart, Ignacio Castano, Kevin Bjorke, Kevin Myers, and Nolan Goodnight.The accompanying DVD includes complementary examples and sample programs.


Foreword xxviiPreface xxixContributors xxxiiiPART I: GEOMETRY 3Chapter 1: Generating Complex Procedural Terrains Using the GPU 7Ryan Geiss, NVIDIA Corporation1.1 Introduction 71.2 Marching Cubes and the Density Function 71.3 An Overview of the Terrain Generation System 121.4 Generating the Polygons Within a Block of Terrain 201.5 Texturing and Shading 291.6 Considerations for Real-World Applications 351.7 Conclusion 371.8 References 37Chapter 2: Animated Crowd Rendering 39Bryan Dudash, NVIDIA Corporation2.1 Motivation 392.2 A Brief Review of Instancing 402.3 Details of the Technique 422.4 Other Considerations 502.5 Conclusion 512.6 References 52Chapter 3: DirectX 10 Blend Shapes: Breaking the Limits 53Tristan Lorach, NVIDIA Corporation3.1 Introduction 533.2 How Does It Work? 563.3 Running the Sample 663.4 Performance 663.5 References 67Chapter 4: Next-Generation SpeedTree Rendering 69Alexander Kharlamov, NVIDIA CorporationIain Cantlay, NVIDIA CorporationYury Stepanenko, NVIDIA Corporation4.1 Introduction 694.2 Silhouette Clipping 694.3 Shadows 764.4 Leaf Lighting 814.5 High Dynamic Range and Antialiasing 854.6 Alpha to Coverage 854.7 Conclusion 884.8 References 91Chapter 5: Generic Adaptive Mesh Refinement 93Tamy Boubekeur, LaBRI-INRIA, University of BordeauxChristophe Schlick, LaBRI-INRIA, University of Bordeaux5.1 Introduction 945.2 Overview 955.3 Adaptive Refinement Patterns 965.4 Rendering Workflow 985.5 Results 1005.6 Conclusion and Improvements 1035.7 References 104Chapter 6: GPU-Generated Procedural Wind Animations for Trees 105Renaldas Zioma, Electronic Arts/Digital Illusions CE6.1 Introduction 1056.2 Procedural Animations on the GPU 1066.3 A Phenomenological Approach 1066.4 The Simulation Step 1136.5 Rendering the Tree 1176.6 Analysis and Comparison 1186.7 Summary 1196.8 References 120Chapter 7: Point-Based Visualization of Metaballs on a GPU 123Kees van Kooten, Playlogic Game FactoryGino van den Bergen, Playlogic Game FactoryAlex Telea, Eindhoven University of Technology7.1 Metaballs, Smoothed Particle Hydrodynamics, and Surface Particles 1247.2 Constraining Particles 1277.3 Local Particle Repulsion 1357.4 Global Particle Dispersion 1407.5 Performance 1457.6 Rendering 1467.7 Conclusion 1477.8 References 148PART II: LIGHT AND SHADOWS 151Chapter 8: Summed-Area Variance Shadow Maps 157Andrew Lauritzen, University of Waterloo8.1 Introduction 1578.2 Related Work 1588.3 Percentage-Closer Filtering 1598.4 Variance Shadow Maps 1618.5 Summed-Area Variance Shadow Maps 1748.6 Percentage-Closer Soft Shadows 1788.7 Conclusion 1818.8 References 181Chapter 9: Interactive Cinematic Relighting with Global Illumination 183Fabio Pellacini, Dartmouth CollegeMilos Hasan, Cornell UniversityKavita Bala, Cornell University9.1 Introduction 1839.2 An Overview of the Algorithm 1849.3 Gather Samples 1869.4 One-Bounce Indirect Illumination 1889.5 Wavelets for Compression 1899.6 Adding Multiple Bounces 1929.7 Packing Sparse Matrix Data 1939.8 A GPU-Based Relighting Engine 1959.9 Results 2009.10 Conclusion 2019.11 References 201Chapter 10: Parallel-Split Shadow Maps on Programmable GPUs 203Fan Zhang, The Chinese University of Hong KongHanqiu Sun, The Chinese University of Hong KongOskari Nyman, Helsinki University of Technology10.1 Introduction 20310.2 The Algorithm 20510.3 Hardware-Specific Implementations 21410.4 Further Optimizations 23210.5 Results 23310.6 Conclusion 23310.7 References 235Chapter 11: Efficient and Robust Shadow Volumes Using Hierarchical Occlusion Culling and Geometry Shaders 239Martin Stich, mental imagesCarsten Wachter, Ulm UniversityAlexander Keller, Ulm University11.1 Introduction 23911.2 An Overview of Shadow Volumes 24011.3 Our Implementation 24411.4 Conclusion 25411.5 References 254Chapter 12: High-Quality Ambient Occlusion 257Jared Hoberock, University of Illinois at Urbana-ChampaignYuntao Jia, University of Illinois at Urbana-Champaign12.1 Review 25712.2 Problems 25812.3 A Robust Solution 26112.4 Results 26712.5 Performance 26912.6 Caveats 27012.7 Future Work 27312.8 References 274Chapter 13: Volumetric Light Scattering as a Post-Process 275Kenny Mitchell, Electronic Arts13.1 Introduction 27513.2 Crepuscular Rays 27613.3 Volumetric Light Scattering 27713.4 The Post-Process Pixel Shader 27913.5 Screen-Space Occlusion Methods 28113.6 Caveats 28213.7 The Demo 28313.8 Extensions 28413.9 Summary 28413.10 References 284PART III: RENDERING 287Chapter 14: Advanced Techniques for Realistic Real-Time Skin Rendering 293Eugene d'Eon, NVIDIA CorporationDavid Luebke, NVIDIA Corporation14.1 The Appearance of Skin 29314.2 An Overview of the Skin-Rendering System 29714.3 Specular Surface Reflectance 29914.4 Scattering Theory 30514.5 Advanced Subsurface Scattering 31414.6 A Fast Bloom Filter 34214.7 Conclusion 34214.8 References 345Chapter 15: Playable Universal Capture 349George Borshukov, Electronic ArtsJefferson Montgomery, Electronic ArtsJohn Hable, Electronic Arts15.1 Introduction 34915.2 The Data Acquisition Pipeline 35015.3 Compression and Decompression of the Animated Textures 35215.4 Sequencing Performances 36315.5 Conclusion 36315.6 References 370Chapter 16: Vegetation Procedural Animation and Shading in Crysis 373Tiago Sousa, Crytek16.1 Procedural Animation 37316.2 Vegetation Shading 37816.3 Conclusion 38416.4 References 384Chapter 17: Robust Multiple Specular Reflections and Refractions 387Tamas Umenhoffer, Budapest University of Technology and EconomicsGustavo Patow, University of GironaLaszlo Szirmay-Kalos, Budapest University of Technology and Economics17.1 Introduction 38817.2 Tracing Secondary Rays 38917.3 Reflections and Refractions 39617.4 Results 40017.5 Conclusion 40217.6 References 406Chapter 18: Relaxed Cone Stepping for Relief Mapping 409Fabio Policarpo, Perpetual EntertainmentManuel M. Oliveira, Instituto de Informatica-UFRGS18.1 Introduction 40918.2 A Brief Review of Relief Mapping 41118.3 Cone Step Mapping 41518.4 Relaxed Cone Stepping 41618.5 Conclusion 42518.6 References 427Chapter 19: Deferred Shading in Tabula Rasa 429Rusty Koonce, NCsoft Corporation19.1 Introduction 42919.2 Some Background 43019.3 Forward Shading Support 43119.4 Advanced Lighting Features 43419.5 Benefits of a Readable Depth and Normal Buffer 44019.6 Caveats 44519.7 Optimizations 44819.8 Issues 45019.9 Results 45419.10 Conclusion 45419.11 References 457Chapter 20: GPU-Based Importance Sampling 459Mark Colbert, University of Central FloridaJaroslav Krivanek, Czech Technical University in Prague20.1 Introduction 45920.2 Rendering Formulation 45920.3 Quasirandom Low-Discrepancy Sequences 46520.4 Mipmap Filtered Samples 46620.5 Performance 47020.6 Conclusion 47120.7 Further Reading and References 474PART IV: IMAGE EFFECTS 477Chapter 21: True Impostors 481Eric Risser, University of Central Florida21.1 Introduction 48121.2 Algorithm and Implementation Details 48221.3 Results 48721.4 Conclusion 48921.5 References 489Chapter 22: Baking Normal Maps on the GPU 491Diogo Teixeira, Move Interactive22.1 The Traditional Implementation 49222.2 Acceleration Structures 49322.3 Feeding the GPU 49622.4 Implementation 49822.5 Results 50822.6 Conclusion 51122.7 References 511Chapter 23: High-Speed, Off-Screen Particles 513Iain Cantlay, NVIDIA Corporation23.1 Motivation 51323.2 Off-Screen Rendering 51423.3 Downsampling Depth 51723.4 Depth Testing and Soft Particles 51923.5 Alpha Blending 52023.6 Mixed-Resolution Rendering 52223.7 Results 52523.8 Conclusion 52723.9 References 528Chapter 24: The Importance of Being Linear 529Larry Gritz, NVIDIA CorporationEugene d'Eon, NVIDIA Corporation24.1 Introduction 52924.2 Light, Displays, and Color Spaces 52924.3 The Symptoms 53324.4 The Cure 53824.5 Conclusion 54124.6 Further Reading 542Chapter 25: Rendering Vector Art on the GPU 543Charles Loop, Microsoft ResearchJim Blinn, Microsoft Research25.1 Introduction 54325.2 Quadratic Splines 54425.3 Cubic Splines 54625.4 Triangulation 55525.5 Antialiasing 55625.6 Code 55825.7 Conclusion 55925.8 References 560Chapter 26: Object Detection by Color: Using the GPU for Real-Time Video Image Processing 563Ralph Brunner, AppleFrank Doepke, AppleBunny Laden, Apple26.1 Image Processing Abstracted 56426.2 Object Detection by Color 56726.3 Conclusion 57426.4 Further Reading 574Chapter 27: Motion Blur as a Post-Processing Effect 575Gilberto Rosado, Rainbow Studios27.1 Introduction 57527.2 Extracting Object Positions from the Depth Buffer 57627.3 Performing the Motion Blur 57927.4 Handling Dynamic Objects 58027.5 Masking Off Objects 58027.6 Additional Work 58127.7 Conclusion 58127.8 References 581Chapter 28: Practical Post-Process Depth of Field 583Earl Hammon, Jr., Infinity Ward28.1 Introduction 58328.2 Related Work 58328.3 Depth of Field 58528.4 Evolution of the Algorithm 58728.5 The Complete Algorithm 59228.6 Conclusion 60228.7 Limitations and Future Work 60328.8 References 605PART V: PHYSICS SIMULATION 607Chapter 29: Real-Time Rigid Body Simulation on GPUs 611Takahiro Harada, University of Tokyo29.1 Introduction 61329.2 Rigid Body Simulation on the GPU 61829.3 Applications 62729.4 Conclusion 62929.5 Appendix 63129.6 References 631Chapter 30: Real-Time Simulation and Rendering of 3D Fluids 633Keenan Crane, University of Illinois at Urbana-ChampaignIgnacio Llamas, NVIDIA CorporationSarah Tariq, NVIDIA Corporation30.1 Introduction 63330.2 Simulation 63430.3 Rendering 66530.4 Conclusion 67230.5 References 673Chapter 31: Fast N-Body Simulation with CUDA 677Lars Nyland, NVIDIA CorporationMark Harris, NVIDIA CorporationJan Prins, University of North Carolina at Chapel Hill31.1 Introduction 67731.2 All-Pairs N-Body Simulation 67931.3 A CUDA Implementation of the All-Pairs N-Body Algorithm 68031.4 Performance Results 68631.5 Previous Methods Using GPUs for N-Body Simulation 69131.6 Hierarchical N-Body Methods 69231.7 Conclusion 69331.8 References 694Chapter 32: Broad-Phase Collision Detection with CUDA 697Scott Le Grand, NVIDIA Corporation32.1 Broad-Phase Algorithms 69732.2 A CUDA Implementation of Spatial Subdivision 70232.3 Performance Results 71932.4 Conclusion 72132.5 References 721Chapter 33: LCP Algorithms for Collision Detection Using CUDA 723Peter Kipfer, Havok33.1 Parallel Processing 72433.2 The Physics Pipeline 72433.3 Determining Contact Points 72633.4 Mathematical Optimization 72833.5 The Convex Distance Calculation 73133.6 The Parallel LCP Solution Using CUDA 73233.7 Results 73833.8 References 739Chapter 34: Signed Distance Fields Using Single-Pass GPU Scan Conversion of Tetrahedra 741Kenny Erleben, University of CopenhagenHenrik Dohlmann, 3Dfacto R&D34.1 Introduction 74134.2 Leaking Artifacts in Scan Methods 74234.3 Our Tetrahedra GPU Scan Method 74734.4 Results 75634.5 Conclusion 75834.6 Future Work 75934.7 Further Reading 76034.8 References 762PART VI: GPU COMPUTING 765Chapter 35: Fast Virus Signature Matching on the GPU 771Elizabeth Seamans, Juniper NetworksThomas Alexander, Polytime35.1 Introduction 77135.2 Pattern Matching 77335.3 The GPU Implementation 77535.4 Results 77935.5 Conclusions and Future Work 78235.6 References 783Chapter 36: AES Encryption and Decryption on the GPU 785Takeshi Yamanouchi, SEGA Corporation36.1 New Functions for Integer Stream Processing 78636.2 An Overview of the AES Algorithm 78836.3 The AES Implementation on the GPU 79036.4 Performance 79736.5 Considerations for Parallelism 79936.6 Conclusion and Future Work 80236.7 References 802Chapter 37: Efficient Random Number Generation and Application Using CUDA 805Lee Howes, Imperial College LondonDavid Thomas, Imperial College London37.1 Monte Carlo Simulations 80637.2 Random Number Generators 80937.3 Example Applications 82137.4 Conclusion 82937.5 References 829Chapter 38: Imaging Earth's Subsurface Using CUDA 831Bernard Deschizeaux, CGGVeritasJean-Yves Blanc, CGGVeritas38.1 Introduction 83138.2 Seismic Data 83238.3 Seismic Processing 83438.4 The GPU Implementation 84138.5 Performance 84938.6 Conclusion 84938.7 References 850Chapter 39: Parallel Prefix Sum (Scan) with CUDA 851Mark Harris, NVIDIA CorporationShubhabrata Sengupta, University of California, DavisJohn D. Owens, University of California, Davis39.1 Introduction 85139.2 Implementation 85339.3 Applications of Scan 86639.4 Conclusion 87539.5 References 875Chapter 40: Incremental Computation of the Gaussian 877Ken Turkowski, Adobe Systems40.1 Introduction and Related Work 87740.2 Polynomial Forward Differencing 87940.3 The Incremental Gaussian Algorithm 88240.4 Error Analysis 88540.5 Performance 88740.6 Conclusion 88840.7 References 888Chapter 41: Using the Geometry Shader for Compact and Variable-Length GPU Feedback 891Franck Diard, NVIDIA Corporation41.1 Introduction 89141.2 Why Use the Geometry Shader? 89241.3 Dynamic Output with the Geometry Shader 89341.4 Algorithms and Applications 89541.5 Benefits: GPU Locality and SLI 90341.6 Performance and Limits 90541.7 Conclusion 90741.8 References 907Index 909

「Nielsen BookData」 より

関連文献: 2件中  1-2を表示


  • ISBN
    • 9780321515261
  • 出版国コード
  • タイトル言語コード
  • 本文言語コード
  • 出版地
    Boston ; Upper Saddle River
  • ページ数/冊数
  • 大きさ
    25 cm