ebook img

GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation PDF

831 Pages·2005·72.816 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation

Programming Techniques for High-Performance Graphics and General-Purpose Computation a r*o, nl1. m i , **, tdltea Plf '-Dy Matt arr Foreword by Tim Swetney, Epic Games - . — - iLAJA(cid:127)tULJ -jt 1» V:^ * * 1 ;/n/- YrDLiA Randima Fernando/ Series Editor * .rf— J* . ;A*. 1b - > r - T ^ - t X ' UJ * . tT Q ... - LT O LJrv *„(cid:127) I a<w:> w »v UJ TowardPhotorealismin TerrainRenderingUsing InsideGeometryInstancing SegmentBuffering VirtualBotany GPU-BasedGeometryClipmaps FrancescoCarucci JonOlick O DavidWhatley ArulAsirvathamandHuguesHoppe (LionheadStudios) (2015) UJ O (SimutronicsCorporation) (MicrosoftResearch) WPsm - §gjiSi^fe £ 00 10 , fifer - 1M J DeferredShading Real-TimeComputationofDynamic ApproximateBidirectional Tile-Based .. .. ... inSTA LKER IrradianceEnvironmentMaps TextureFunctions TextureMapping OlesShishkovtsov GaryKing JanKautz Li-YiWei (GSCGameWorld) (NVIDIA) (MIT) (NVIDIA) roo Q£ UJ UJ UJ O UJ CtL £ HH EfficientSoft-EdgedShadows UsingVertexTextureDisplacement GenericRefraction ^ FastThird-OrderTextureFiltering UsingPixelShaderBranching forRealisticWaterRendering Simulation — ChristianSigg(ETHZurich) YuryUralsky YuriKryachko TiagoSousa ? andMarkusHadwiger (NVIDIA) (1C:MaddoxGames) (Crytek) (VRVisResearchCenter) U - UJ -c UvOJ Oo GPUImageProcessing ImplementingImproved AdvancedHigh-Quality Mipmap-Level inApple'sMotion PerlinNoise Filtering Measurement PeteWarden SimonGreen JustinNovosad IainCantlay (AppleComputer) (NVIDIA) (discreet) (ClimaxEntertainment) cVOn KOT'> 11 223$s OctreeTexturesontheGPU High-QualityGlobalIllumination GlobalIlluminationUsing ComputerVisionontheGPU SylvainLefebvre,SamuelHornus, RenderingUsingRasterization ProgressiveRefinementRadiosity JamesFung O andFabriceNeyret ToshiyaHachisuka GregCoombe(UNCatChapelHill) (UniversityofToronto) (GRAVIR/IMAG-INRIA) (TheUniversityofTokyo) andMarkHarris(NVIDIA) O UJ cn UJ OUQJC OO'' O(cid:127)v'l <Q Q£ cC(cid:127)on-. O < _ L3 < ri c J DeferredFiltering;Rendering ConservativeRasterization 2 QC1 GPUComputingforProtein AGPUFrameworkforSolving JfrooemKnDisifsfi(cUunltivD.oatfaUFtaohrm),aAtsaronLefohn, JAoknenHinaess-Melgorlelenr,,TaonmdaLsennart ^ 5UJ SPtaruulciutusrMeiPcrikeedvicictiiouns SJeynssteKmrsugoefrLainndeaRruEdiqgueartWioensstermann andNathanielFout(UCDavis) Ohlsson(LundUniversity) (ArmstrongAtlanticStateUniversity) (TechnischeUniversitdtMunchen) , HRI I cn I1 * f;!, ^y//n\\v^ OptimizingResourceManagement HardwareOcclusionQueries AdaptiveTessellationofSubdivision Per-PixelDisplacementMapping withMultistreaming MadeUseful SurfaceswithDisplacementMapping withDistanceFunctions OliverHoellerandKurtPelzer MichaelWimmerandJiriBittner MichaelBunnell WilliamDonnelly (PiranhaBytes) (ViennaUniversityofTechnology) (NVIDIA) (UniversityofWaterloo) * £ - *# 4 * ^ Implementingthementalimages DynamicAmbientOcclusion BlueprintRenderingand AccurateAtmospheric PhenomenaRendererontheGPU andIndirectLighting "SketchyDrawings" Scattering Martin-KarlLefran^ois MichaelBunnell MarcNienhausandJurgenDollner SeanO'Neil (mentalimages) (NVIDIA) (UniversityofPotsdam) u> Ln High-QualityAntialiased FastPrefilteredLines HairAnimationandRendering UsingLookupTablestoAccelerate Rasterization EricChanandFredoDurand intheNaluDemo ColorTransformations DanWexlerandEricEnderton (MIT) HubertNguyenandWilliamDonnelly JeremySelan (NVIDIA) (NVIDIA) (SonyPicturesImageworks) cxi LU _ is is QQC Ln u(cid:127)o> osO < (cid:127)_(cid:127) (SI Q O StreamingArchitectures TheGeForce6Series MappingComputational TakingthePlungeinto O andTechnologyTrends GPUArchitecture ConceptstoGPUs GPUComputing O JohnOwens EmmettKilgariffand MarkHarris IanBuck (UCDavis) RandimaFernando (NVIDIA) (StanfordUniversity) < (NVIDIA) - Q o mm ABB BBC /\ /\ LLUU_ rwy. ro AB B BC o vn Vr MM /\/\/\ oQn w mm AAB AwC BCC . \/ CL. S7u7*7NWM BtawhLk»n AAC AC ACC < oc ImplementingEfficientParallel GPUFlow-ControlIdioms GPUProgramOptimization StreamReductionOperations LU DataStructuresonGPUs MarkHarris(NVIDIA)and Cliff Woolley forGPGPUApplications LU Aaron.Lefohn(UCDavis),JoeKniss IanBuck(StanfordUniversity) (UniversityofVirginia) DanielHorn O (Univ ofUtah),JohnOwens(UCDavis) (StanfordUniversity) o OptionsPricingontheGPU ImprovedGPUSorting FlowSimulationwithComplexBoundaries MedicalImageReconstruction CraigKolbandMattPharr PeterKipferandRudigerWestermann WeiLi(SiemensCorporateResearch), withtheFFT (NVIDIA) (TechnischeUniversitatMunchen) ZheFan,XiaomingWei,andArie ThilakaSumanaweeraandDonaldLiu Kaufman(Stony BrookUniversity) (SiemensMedicalSolutionsUSA) GPU Gems 2 GPU Gems 2 Programming Techniquesfor - High Performance Graphics and - General PurposeComputation Edited byMatt Pharr RandimaFernando,SeriesEditor AAddison-Wesley UpperSaddleRiver,NJ (cid:127) Boston (cid:127) Indianapolis (cid:127)SanFrancisco NewYork (cid:127) Toronto (cid:127)Montreal (cid:127)London (cid:127) Munich (cid:127) Paris (cid:127) Madrid Capetown (cid:127)Sydney (cid:127)Tokyo (cid:127)Singapore (cid:127)MexicoCity AbouttheCover:TheNalucharacterwascreatedbytheNVIDIADemoTeamtoshowcasetherenderingpowerofthe GeForce6800GPU.Thedemoshowsoffadvancedhairshadingandshadowingalgorithms,aswellasiridescenceand bioluminescence.Softshaftsoflightfromthewatersurfaceareblockedbyherbody,andherskinisUtbythelight refractedthroughthewater’ssurface,withherbodyandhaircastingsoftshadowsonherassheswims. Manyofthedesignationsusedbymanufacturersandsellerstodistinguishtheirproductsareclaimedastrade- marks.Wherethosedesignationsappearinthisbook,andAddison-Wesleywasawareofatrademarkclaim,the designationshavebeenprintedwithinitialcapitallettersorinallcapitals. Theauthorsandpublisherhavetakencareinthepreparationofthisbook,butmakenoexpressedorimpliedwar- rantyofanykindandassumenoresponsibilityforerrorsoromissions.Noliabilityisassumedforincidentalor consequentialdamagesinconnectionwithorarisingoutoftheuseoftheinformationorprogramscontainedherein. NVIDIAmakesnowarrantyorrepresentationthatthetechniquesdescribedhereinarefreefromanyIntellectual Propertyclaims.Thereaderassumesallriskofanysuchclaimsbasedonhisorheruseofthesetechniques. Thepublisheroffersexcellentdiscountsonthisbookwhenorderedinquantityforbulkpurchasesorspecial sales,whichmayincludeelectronicversionsand/orcustomcoversandcontentparticulartoyourbusiness,train- inggoals,marketingfocus,andbrandinginterests.Formoreinformation,pleasecontact: U.S.CorporateandGovernmentSales (800)382-3419 [email protected] ForsalesoutsideoftheU.S.,pleasecontact: InternationalSales [email protected] VisitAddison-WesleyontheWeb:www.awprofessional.com LibraryofCongressCataloging-in-PublicationData GPUgems2:programmingtechniquesforhigh-performancegraphicsandgeneral-purpose computation/editedbyMariPharr;RandimaFernando,serieseditor, p. cm. Includesbibliographicalreferencesandindex. ISBN0-321-33559-7(hardcover:alk.paper) 1.Computergraphics.2.Real-timeprogramming.I.Pharr,Matt.II.Fernando,Randima. T385-G6882005 — 006.66 dc22 2004030181 GeForce andNVIDIAQuadro®aretrademarksorregisteredtrademarksofNVIDIACorporation. Nalu,Timbury,andClearSailingimages©2004NVIDIACorporation. mentalimagesandmentalrayaretrademarksorregisteredtrademarksofmentalimages,GmbH. Copyright©2005byNVIDIACorporation. Allrightsreserved.Nopartofthispublicationmaybereproduced,storedinaretrievalsystem,ortransmitted,in anyform,orbyanymeans,electronic,mechanical,photocopying,recording,orotherwise,withoutthepriorcon- sentofthepublisher:PrintedintheUnitedStatesofAmerica.PublishedsimultaneouslyinCanada. Forinformationonobtainingpermissionforuseofmaterialfromthiswork,pleasesubmitawrittenrequestto: PearsonEducation,Inc. RightsandContractsDepartment OneLakeStreet UpperSaddleRiver,NJ07458 ISBN0-321-33559-7 TextprintedintheUnitedStatesonrecycledpaperatQuebecorWorldTauntoninTaunton,Massachusetts. Firstprinting,March2005 To everyone striving to make todays best computergraphics look primitive tomorrow Contents Foreword .. xxix Preface.... xxxi Contributors xxxv PARTI GEOMETRICCOMPLEXITY l Chapter1 Toward Photorealism inVirtual Botany 7 DavidWhatley,SimutronicsCorporation 1.1 SceneManagement 7 . 1.11 ThePlantingGrid 8 . 1.12 PlantingStrategy 9 . 1.13 Real-TimeOptimization 10 1.2 TheGrassLayer 11 . 1.21 SimulatingAlphaTransparencyviaDissolve 13 1.2.2 Variation 15 . 1.23 Lighting 15 1.2.4 Wind 17 1.3 TheGroundClutterLayer 17 1.4 TheTreeandShrubLayers 18 1.5 Shadowing 20 1.6 Post-Processing 22 1.6.1 SkyDomeBlooming 23 . 1.6 2 Full-SceneGlow 24 1.7 Conclusion 24 1.8 References 24 Contents v»» Chapter2 TerrainRenderingUsingGPU-BasedGeometryClipmaps 27 ArulAsirvatham,MicrosoftResearch HuguesHoppe,MicrosoftResearch 2.1 ReviewofGeometryClipmaps 27 2.2 OverviewofGPUImplementation 30 . 2.21 DataStructures 31 . 2.2 2 ClipmapSize 31 2.3 Rendering 32 . 2.3I ActiveLevels 32 - 2.32 VertexandIndexBuffers 33 . 2.33 ViewFrustumCulling.. 35 . 2.34 DrawPrimitiveCalls. 35 . 2.35 TheVertexShader 36 . 2.36 ThePixelShader 38 2.4 Update 39 . 2.41 Upsampling 40 . 2.4 2 Residuals 42 2.4.3 NormalMap 42 2.5 ResultsandDiscussion 43 2.6 SummaryandImprovements 43 . 2.61 VertexTextures ... 44 . 2.62 EliminatingNormalMaps.... 44 2.6.3 Memory-FreeTerrainSynthesis 44 2.7 References 44 Chapter3 InsideGeometryInstancing 47 FrancescoCarucci,UonheadStudios 3.1 WhyGeometryInstancing? 48 3.2 Definitions 49 3.2.1 GeometryPacket 49 3.2.2 InstanceAttributes 49 3.2.3 GeometryInstance 50 . 3.24 RenderandTextureContext 50 3.2.5 GeometryBatch 50 viii Contents 33 Implementation 53 3.3.1 StaticBatching 54 3.3.2 DynamicBatching 56 3.3.3 VertexConstantsInstancing 57 3.3.4 BatchingwiththeGeometryInstancingAPI 61 3.4 Conclusion 65 3.5 References 67 Chapter4 SegmentBuffering 69 IonOlick,2015 4.1 TheProblemSpace 69 4.2 TheSolution 70 4.3 TheMethod 71 4.3.1 SegmentBuffering,Step1 71 4.3.2 SegmentBuffering,Step2 71 4.3.3 SegmentBuffering,Step3 72 4.4 ImprovingtheTechnique 72 4.5 Conclusion 72 4.6 References 73 Chapter 5 OptimizingResourceManagementwithMultistreaming 75 OliverHoeller,PiranhaBytes KurtPelzer,PiranhaBytes 5.1 Overview 76 5.2 Implementation 77 5.2.1 MultistreamingwithDirectX9.0 78 5.2.2 ResourceManagement 81 5.2.3 ProcessingVertices 83 5.3 Conclusion 89 5.4 References 90 Chapter6 HardwareOcclusionQueriesMadeUseful 91 MichaelWimmer,ViennaUniversityofTechnology JinBittner,ViennaUniversityofTechnology 6.1 Introduction 91 6.2 ForWhichScenesAreOcclusionQueriesEffective? 92 Contents ix

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.