Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Upcoming SlideShare
Introduction to Monte Carlo Ray Tracing (CEDEC 2013)
Next
Download to read offline and view in fullscreen.

Share

Forward+ (EUROGRAPHICS 2012)

Download to read offline

Related Books

Free with a 30 day trial from Scribd

See all

Forward+ (EUROGRAPHICS 2012)

  1. 1. 1 | Forward+ | 2012 FORWARD+: BRINGING DEFERRED LIGHTING TO THE NEXT LEVEL AMD TAKAHIRO HARADA
  2. 2. 2 | Forward+ | 2012 DIRECT LIGHTING § Lighting = direct lighting + indirect lighting –  This paper focuses direct lighting § For each light source, evaluate light intensity, BxDF, visibility. § Accumulate multiply of three terms Light intensity, BxDF, Visibility
  3. 3. 3 | Forward+ | 2012 REAL-TIME SOLUTION FOR RENDERING EQUATION § Forward rendering –  Limit the number of lights to be evaluated § Pick m lights for each object –  Limited visibility computation § visibility is not calculated for all the lights
  4. 4. 4 | Forward+ | 2012 REAL-TIME SOLUTION FOR RENDERING EQUATION § Forward rendering –  Limit the number of lights to be evaluated § Pick m lights for each object –  Limited visibility computation § visibility is not calculated for all the lights § Deferred rendering –  Increase the number of lights –  Separation of light term and BxDF (shading)
  5. 5. 5 | Forward+ | 2012 QUESTION § Deferred works well for GPUs on console § What is the rendering pipeline for today’s high end GPUs? –  It is different from console GPUs –  ALU/Mem ratio is higher –  Branch penalty is smaller
  6. 6. 6 | Forward+ | 2012 REAL-TIME SOLUTION COMPARISON § Forward+ § Rendering equation
  7. 7. 7 | Forward+ | 2012 REAL-TIME SOLUTION COMPARISON § Forward+ § Rendering equation § Forward § Deferred
  8. 8. 8 | Forward+ | 2012 FORWARD+ § Extension of Forward rendering pipeline –  Do not limit material usage § Extension of Deferred rendering pipeline –  Keep the capability of using many lights § Forward+ == Forward + Light Culling
  9. 9. 9 | Forward+ | 2012 FORWARD RENDERING PIPELINE § Depth prepass –  Fills z buffer § Prevent overdraw for shading § Shading –  Geometry is rendered –  Pixel shader § Iterate through light list set for each object § Evaluates materials for the lights
  10. 10. 10 | Forward+ | 2012 FORWARD+ RENDERING PIPELINE § Depth prepass –  Fills z buffer § Prevent overdraw for shading § Used for pixel position reconstruction for light culling § Light culling –  Culls light per tile basis –  Input: z buffer, light buffer –  Output: light list per tile § Shading –  Geometry is rendered –  Pixel shader § Iterate through light list calculated in light culling § Evaluates materials for the lights 1 2 3 [1,2,3][1] [2,3]
  11. 11. 11 | Forward+ | 2012 LIGHT CULLING DETAIL § Implemented using compute shader § Gather, scatter implementation –  Gather is simpler –  See paper for scatter implementation § Gather implementation –  Single compute shader –  A thread group is executed per tile –  Calculate Z extent –  Build frustum –  64 lights are culled in parallel –  Overlapped light indices are accumulated in TLS –  Export § One atomic add § Write light indices to a contiguous memory (ó Linked list)
  12. 12. 12 | Forward+ | 2012 BENEFITS § Material variety –  All the information is available in pixel shader § No separation of lighting and shading § No limitation to BRDFs –  Improves the pixel quality § Smaller memory traffic compared to deferred –  Good for low bandwidth GPUs (e.g., integrated GPUs) –  Performance increase
  13. 13. 13 | Forward+ | 2012 BENCHMARK 3,074 DYNAMIC LIGHTS ■ 0 lights ■ 25 lights ■ 50 lights 0   2   4   6   8   10   12   Deferred   Forward+   Deferred   Forward+   Radeon  HD   6970   Radeon  HD   7970   Prepass   Light  Processing   Final  Shading   Per frame rendering time (ms) Forward+ v.s. Compute-based Deferred lighting
  14. 14. 14 | Forward+ | 2012 WHY FORWARD+ FASTER? Forward+ § Depth prepass –  Write: Depth buffer Deferred § G prepass –  Write: Depth buffer, Normal buffer< 0   2   4   6   8   10   12   Deferred   Forward+   Radeon  HD   6970   Prepass   Light  Processing   Final  Shading  
  15. 15. 15 | Forward+ | 2012 WHY FORWARD+ FASTER? Forward+ § Depth prepass –  Write: Depth buffer § Light culling –  Read: depth, light geometry –  Compute: culling –  Write: light list Deferred § G prepass –  Write: Depth buffer, Normal buffer § Light accumulation –  Read: depth, normal, light geometry, light property –  Compute: culling, lighting –  Write: light accumulation buffer < << < < 0   2   4   6   8   10   12   Deferred   Forward+   Radeon  HD   6970   Prepass   Light  Processing   Final  Shading  
  16. 16. 16 | Forward+ | 2012 WHY FORWARD+ FASTER? Forward+ § Depth prepass –  Write: Depth buffer § Light culling –  Read: depth, light geometry –  Compute: culling –  Write: light list § Shading –  Read: light list, light property –  Compute: lighting, shading Deferred § G prepass –  Write: Depth buffer, Normal buffer § Light accumulation –  Read: depth, normal, light geometry, light property –  Compute: culling, lighting –  Write: light accumulation buffer § Shading –  Read: accumulated light color –  Compute: shading < << < < > >> 0   2   4   6   8   10   12   Deferred   Forward+   Radeon  HD   6970   Prepass   Light  Processing   Final  Shading  
  17. 17. 17 | Forward+ | 2012 AMD LEO DEMO § Forward+ rendering pipeline § Dynamic lighting from many lights § Physically-based BRDFs § Indirect illumination by dynamic VPLs § AA http://developer.amd.com/samples/demos/pages/AMDRadeonHD7900SeriesGraphicsReal-TimeDemos.aspx
  18. 18. 18 | Forward+ | 2012 EXTENSIONS § Deferred has advantages too § Light culling can be used for deferred –  G prepass, light culling, screen space shading § Forward+ can be coupled with screen space effects –  SSAO –  Export normal buffer at prepass –  Fetch AO value from pixel shader for final shading
  19. 19. 19 | Forward+ | 2012 BONUS
  20. 20. 20 | Forward+ | 2012 REAL-TIME SOLUTION COMPARISON § Forward+ § Rendering equation § Forward § Deferred
  21. 21. 21 | Forward+ | 2012 REAL TIME SHADOWING FROM THOUSANDS OF DYNAMIC LIGHTS § Forward + Deferred + Ray Trace § Deferred = Primary ray cast result § Ray Trace = Visibility computation § Forward = Final Shading
  • ShunsukeTakeuchi1

    Feb. 18, 2019
  • bishaohua

    Nov. 24, 2018
  • FuensantaOlmos1

    Sep. 29, 2018
  • PhilLira1

    Jul. 29, 2017
  • evandro.millian

    Jul. 23, 2017
  • SakibSaikia

    Dec. 21, 2016
  • makeevsergey

    Nov. 22, 2015
  • DenisOvod

    May. 28, 2015
  • AlfredChang2

    May. 19, 2015
  • sergiibiloshytskyi

    May. 17, 2015
  • sharavsambuu

    May. 17, 2015
  • minami1943

    Apr. 29, 2015
  • ssuser627da7

    Apr. 2, 2015
  • arabesc

    Mar. 23, 2015
  • minuz

    Mar. 19, 2015
  • mataro777

    Mar. 16, 2015
  • tokoik

    Jan. 28, 2015
  • KeisukeTanaka4

    Nov. 13, 2014
  • romangalashov

    Oct. 30, 2014
  • thomasschlogl5

    Oct. 24, 2014

Views

Total views

37,039

On Slideshare

0

From embeds

0

Number of embeds

10,973

Actions

Downloads

295

Shares

0

Comments

0

Likes

24

×