Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Physically Based and Unified Volumetric Rendering in Frostbite

145.888 Aufrufe

Veröffentlicht am

Talk by Sebastien Hillaire at Electronic Arts for SIGGRAPH 2015 in the Advances in Real-time Rendering course.

Veröffentlicht in: Software
  • You might get some help from ⇒ www.HelpWriting.net ⇐ Success and best regards!
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • Puma Toto merupakan agen togel online terpercaya di seluruh Nusantara. Puma Toto memiliki 8juta member yang bermain bersama dengan Puma Toto dan telah bergerak di bidang bandar togel online terpercaya lebih dari 10tahun. Puma Toto juga Prediksi Togel Akurat dan juga memiliki Prediksi Angka Jitu yang telah bergerak lebih dari 10 tahun, dan akan membantu Anda untuk mendapatkan kemenangan dalam taruhan togel online Bagi Anda yang suka bermain taruhan togel online dan dengan cara main togel online yang tepat untuk mendapatkan kemenangan yang besar, Anda bisa untuk bergabung dengan Puma Toto. Puma Toto juga memiliki Keuntungan bagi Anda yang bergabung, seperti: Bonus New Member 10% Bonus Harian 2% max 10rb / hari Bonus Referral 2% (Seumur Hidup) Deposit Termurah, hanya 10.000 rupiah Minimal taruhan 100perak Diskon dan Hadiah yang menarik dari Puma Toto: Discount dan Hadiah 2D Puma Toto : 18% x 79 Discount dan Hadiah 3D Puma Toto : 46% x 510 Discount dan Hadiah 4D Puma Toto : 58% x 3.900 Puma Toto bekerjasama dengan 25 Negara yang mengeluarkan permainan Togel Online, Yakni: 1. Togel Singapore / Togel SGP dari Singapura 2. Togel Hongkong / Togel HK dari Hongkong 3. Togel Sydney dari Australia 4. Togel Tibetian4D dari Tibet 5. Togel Mongolia4D dari Mongolia 6. Togel Tokyo Mega dari Jepang 7. Togel Korea4D dariKorea 8. Togel Penang4D dari Malaysia 9. Togel Swiss4D dari Swiss 10. Togel Vietnam4D dari Vietnam 11. Togel Bangkok4D dari Thailand 12. Togel Germany4D dari Jerman 13. Togel UK4D dari Inggris 14. Togel Spain4d dari Spanyol 15. Togel Mexico4D dari Mexico 16. Togel Brazilia4D dari Brazil 17. Togel Psco dari Filipina 18. Togel Bulleyes dari New Zealand 19. Togel Greece dari Yunani 20. Togel Texas Morning dari Amerika 21. Togel Oregon 1 dari Amerika 22. Togel Oregon 2 dari Amerika 23. Togel Oregon 3 dari Amerika 24. Togel Carolina 1 dari Amerika 25. Togel Virginia Night dari Amerika Daftarkan diri Anda bersama Puma Toto.Bandar Togel Online Terpercaya dengan minimal deposit hanya 10.000 rupiah dan dengan minimal betting hanya 100 perak dan proses deposit tercepat maximal 1 menit dan proses withdraw tercepat hanya 2menit maximal. Puma Toto akan membantu kemenangan Anda dalam bermain permainan togel online, tentunya ketika Anda bergabung dengan Bandar Togel Online Terpercaya Dan dengan cara main togel online terbaik. Dan dengan kualitas pelayanan bintang lima dari Puma Toto untuk kalian para pecinta permainan togel online. Puma Toto juga memiliki Prediksi Angka Jitu, dan Prediksi Togel Akurat yang dapat membantu kemenangan Anda dalam bermain taruhan togel online.
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • To get professional research papers you must go for experts like ⇒ www.WritePaper.info ⇐
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • There was more choice at auction than I expected and easier to bid than I thought it would be. Thanks for the confidence to buy this way. ☺☺☺ https://w.url.cn/s/A9eBVEi
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • $40/day Cash-Only Surveys ➜➜➜ https://dwz1.cc/EWG1lhe4
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

Physically Based and Unified Volumetric Rendering in Frostbite

  1. 1. Physically Based and Unified Volumetric Rendering in Frostbite SEBASTIEN HILLAIRE - ELECTRONIC ARTS / FROSTBITE
  2. 2. 2SIGGRAPH 2015 – Advances in Real-Time Rendering course Context  Physically based rendering in Frostbite  See [Lagarde & de Rousiers 2014]  Huge increase in visual quality
  3. 3. 3SIGGRAPH 2015 – Advances in Real-Time Rendering course Context  Volumetric rendering in Frostbite was limited  Global distance/height fog  Screen space light shafts  Particles
  4. 4. 4SIGGRAPH 2015 – Advances in Real-Time Rendering course Real-life volumetric Atmosphere and clouds Scattering events More fog Scattering occlusion Varying density
  5. 5. 5SIGGRAPH 2015 – Advances in Real-Time Rendering course Previous work  Billboards  Analytic fog [Wenzel07]  Analytic light scattering [Miles]  Light shaft  Post process [Mitchell07]  Epipolar sampling [Engelhardt10] [Mitchell07] [Miles]
  6. 6. 6SIGGRAPH 2015 – Advances in Real-Time Rendering course Previous work  Splatting  Light volumes  [Valliant14][Glatzel14][Hillaire14]  Emissive volumes [Lagarde13]  Volumetric fog [Wronski14]  Sun and local lights  Heterogeneous media [Valliant14] [Lagarde13]
  7. 7. 7SIGGRAPH 2015 – Advances in Real-Time Rendering course Scope and motivation  Increase visual quality and give more freedom to art direction!  Physically based volumetric rendering  Meaningful material parameters  Decouple material from lighting  Coherent results  Unified volumetric interactions  Lighting + regular and volumetric shadows  Interaction with opaque, transparent and particles
  8. 8. 8SIGGRAPH 2015 – Advances in Real-Time Rendering course Results
  9. 9. 9SIGGRAPH 2015 – Advances in Real-Time Rendering course Outline  Volumetric rendering  Volumetric shadows  More volumetric rendering in Frostbite  Conclusion
  10. 10. 10SIGGRAPH 2015 – Advances in Real-Time Rendering course Volumetric rendering: single scattering 𝑳𝒊 𝒙, 𝝎𝒊 = 𝑻𝒓 𝒙, 𝒙𝒔 𝑳𝒔 𝒙𝒔, 𝝎𝒐 + 𝟎 𝒔 𝑻𝒓 𝒙, 𝒙𝒕 𝝈𝒕 𝒙 𝑳𝒔𝒄𝒂𝒕 𝒙𝒕, 𝝎𝒊 𝒅𝒕 𝑻𝒓 𝒙, 𝒙𝒔 = 𝒆𝒙𝒑(− 𝟎 𝒔 𝝈𝒕 𝒙 𝒅𝒕) 𝒙 𝒙𝒔 𝑽𝒊𝒔 𝒙, 𝒍 = 𝒔𝒉𝒂𝒅𝒐𝒘𝑴𝒂𝒑 𝒙, 𝒍 ∗ 𝒗𝒐𝒍𝒖𝒎𝒆𝒕𝒓𝒊𝒄𝑺𝒉𝒂𝒅𝒐𝒘𝑴𝒂𝒑 𝒙, 𝒍 𝑳𝒔𝒄𝒂𝒕 𝒙𝒕, 𝝎𝒊 = 𝛒 𝒍=𝟎 𝒍𝒊𝒈𝒉𝒕𝒔 𝒇 𝒗, 𝒍 𝑽𝒊𝒔 𝒙, 𝒍 𝑳𝒊(𝒙, 𝒍)
  11. 11. 11SIGGRAPH 2015 – Advances in Real-Time Rendering course Our approach: clip space volumes  Frustum aligned 3D textures [Wronski14]  Frustum voxel in world space => Froxel   Note: Frostbite is a tiled-based deferred lighting  16x16 tiles with culled light lists  Align volume tiles on light tiles  Reuse per tile culled light list  Volume tiles can be smaller (8x8, 4x4, etc.)  Careful correction for resolution integer division  Default: 8x8 volume tiles, 64 Depth slices Screen X ScreenY
  12. 12. 12SIGGRAPH 2015 – Advances in Real-Time Rendering course Our approach: data flow 1. Material properties 2. Froxel Light Scattering 3. Final integration Participating media entities ClipspacevolumesInputdata Lighting and shadowing information
  13. 13. 13SIGGRAPH 2015 – Advances in Real-Time Rendering course Our approach: data flow 1. Material properties 2. Froxel Light Scattering 3. Final integration Participating media entities ClipspacevolumesInputdata Lighting and shadowing information
  14. 14. 14SIGGRAPH 2015 – Advances in Real-Time Rendering course Participating media material definition  Follow the theory [PBR]  Absorption 𝝈 𝒂 (m-1)  Scattering 𝝈 𝒔 (m-1)  Phase 𝒈  Emissive 𝝈 𝒆 (irradiance.m-1)  Extinction 𝝈𝒕 = 𝝈 𝒔 + 𝝈 𝒂  Albedo 𝛒 = 𝝈 𝒔 / 𝝈𝒕  Artists can author {absorption, scattering} or {albedo, extinction}  Train your artists! Important for them to understand their meaning!
  15. 15. 15SIGGRAPH 2015 – Advances in Real-Time Rendering course Participating Media (PM) properties voxelization  PM sources  Depth fog  Height fog  Local fog volumes  With or W/o density textures  Voxelize PM properties into V-Buffer  Add Scattering, Emissive and Extinction  Average Phase g (no multi lobe)  Wavelength independent 𝝈𝒕 (for now) V-Buffer (per Froxel data) Format Scattering R Scattering G Scattering B Extinction RGBA16F Emissive R Emissive G Emissive B Phase (g) RGBA16F With density texturesWithout density textures
  16. 16. 16SIGGRAPH 2015 – Advances in Real-Time Rendering course Our approach: data flow 1. Material properties 2. Froxel Light Scattering 3. Final integration Participating media entities ClipspacevolumesInputdata Lighting and shadowing information
  17. 17. 17SIGGRAPH 2015 – Advances in Real-Time Rendering course Froxel integration  Per froxel 1. Sample PM properties data 2. Evaluate 1. Scattered light 𝑳𝒔𝒄𝒂𝒕 𝒙𝒕, 𝝎𝒐 2. Extinction  Scattered light:  1 sample per froxel  Integrate all light sources: indirect light + sun + local lights Scattering/Transmittance Buffer Format Extinction RGBA16FScattered light to camera RGB
  18. 18. 18SIGGRAPH 2015 – Advances in Real-Time Rendering course Froxel integration: Sun/Ambient/Emissive  Indirect light on local fog volume  From Frostbite diffuse SH light probe  1 probe at volume centre  Integrate w.r.t. phase function as a SH cosine lobe [Wronski14]  Sun light  Sample cascaded shadow maps
  19. 19. 19SIGGRAPH 2015 – Advances in Real-Time Rendering course Froxel integration: Local lights  Local lights  Reuse tiled-lighting code  Use forward tile light list post-culling  No scattering? skip local lights  Shadows  Regular shadow maps  Volumetric shadow maps
  20. 20. 20SIGGRAPH 2015 – Advances in Real-Time Rendering course Temporal volumetric integration  1 scattering/extinction sample per frame  Under sampling with very strong material  Aliasing under camera motion  Shadows make it worse
  21. 21. 21SIGGRAPH 2015 – Advances in Real-Time Rendering course Temporal volumetric integration
  22. 22. 22SIGGRAPH 2015 – Advances in Real-Time Rendering course Temporal volumetric integration  Solution: Temporal integration  Jittered samples (Halton)  Same offset for all samples along view ray  Jitter scattering AND material samples in sync  Re-project previous scattering/extinction  5% Blend current with previous  Exponential moving average [Karis14]  Out of Frustum: skip history Frame N Frame N-1
  23. 23. 23SIGGRAPH 2015 – Advances in Real-Time Rendering course With Temporal volumetric integration
  24. 24. 24SIGGRAPH 2015 – Advances in Real-Time Rendering course With Temporal volumetric integration
  25. 25. 25SIGGRAPH 2015 – Advances in Real-Time Rendering course Temporal volumetric integration  Remaining issues  Material animation leaves trails  Re-project using velocity?  What about multiple volumes intersecting?  What about animated volumes? (e.g. fluid simulation)  Moving lights leave trails  Use neighbour clamping? [Karis14]  Challenging R&D area!
  26. 26. 26SIGGRAPH 2015 – Advances in Real-Time Rendering course Our approach: data flow 1. Material properties 2. Froxel Light Scattering 3. Final integration Participating media entities ClipspacevolumesInputdata Lighting and shadowing information
  27. 27. 27SIGGRAPH 2015 – Advances in Real-Time Rendering course Final PM volume  Integrate froxel {scattering, extinction} along view ray  Solves {𝑳𝒊 𝒙, 𝝎𝒐 , 𝑻𝒓 𝒙, 𝒙𝒔 } for each froxel at position 𝒙𝒔 float4 accumScatteringTransmittance = float4(0.0, 0.0, 0.0, 1.0); for (uint textureDepth = 0; textureDepth < volumeDepth; ++textureDepth) { uint4 coord = uint4(DispatchThreadId.xy, textureDepth,0); float4 scatteringExtinction = g_ ScatteringExtinctionVolume.Load(coord); const float transmittance = exp(-scatteringExtinction.a*stepLen); accumScatteringTransmittance.rgb += scatteringExtinction.rgb*accumScatteringTransmittance.a; accumScatteringTransmittance.a *= transmittance; g_FinalScatteringTransmittanceVolumeOut[coord.xyz] = accumScatteringTransmittance; } Wrong
  28. 28. 28SIGGRAPH 2015 – Advances in Real-Time Rendering course Final PM volume Non energy conservative integration:  Single scattered light sample 𝑆 = 𝑳𝒔𝒄𝒂𝒕 𝒙𝒕, 𝝎𝒐 OK  Single transmittance sample 𝑻𝒓 𝒙, 𝒙𝒔 NOT OK  Integrate lighting w.r.t. transmittance over froxel depth D 𝝈 𝒔 = 5 𝝈 𝒔 = 50 𝝈 𝒔 = 5000 𝝈 𝒔 = 5000 swapped scattering/transmittance code 0 𝐷 𝑒−𝝈𝒕 𝑥 × 𝑆 𝑑𝑥 = 𝑆−𝑆×𝑒−𝝈𝒕 𝐷 𝝈𝒕 𝝈 𝒔 = 5000
  29. 29. 29SIGGRAPH 2015 – Advances in Real-Time Rendering course Final PM volume  Also improves with volumetric shadows Without fixed integration: light leaking With improved integration:
  30. 30. 30SIGGRAPH 2015 – Advances in Real-Time Rendering course Final PM volume rendering on scene  {𝑳𝒊 𝒙, 𝝎𝒐 , 𝑻𝒓 𝒙, 𝒙𝒔 } Similar to pre-multiplied color/alpha  Applied on opaque surfaces per pixel  Evaluated on transparent surfaces per vertex, applied per pixel Camera view point New view with locked PM volumes
  31. 31. 31SIGGRAPH 2015 – Advances in Real-Time Rendering course Result validation  Compare results to references from Mitsuba  Physically based path tracer  Same conditions: single scattering only, exposure, etc.  Scene 1:
  32. 32. 32SIGGRAPH 2015 – Advances in Real-Time Rendering course Result validation - scene 1 Frostbite Mitsuba Render (light above) Luminance gradient Render (light inside) Luminance gradient
  33. 33. 33SIGGRAPH 2015 – Advances in Real-Time Rendering course Result validation - scene 2 G=0 G=0.9 Render Luminance gradient Render Luminance gradient Frostbite Mitsuba
  34. 34. 34SIGGRAPH 2015 – Advances in Real-Time Rendering course Performance  Sun + shadow cascade  14 point lights  2 with regular & volumetric shadows  6 local fog volumes  All with density textures
  35. 35. 35SIGGRAPH 2015 – Advances in Real-Time Rendering course Performance: PS4, 900p  64 depth slices  Plan for your use cases  High or low frequency media? Local lights needed? Emissive needed? Etc. Volume tile resolution 8x8 16x16 PM Material voxelization 0.45 ms 0.15 ms Light scattering 2.00 ms 0.50 ms Final accumulation 0.40 ms 0.08 ms Application (Fog pass) +0.1 ms +0.1 ms Total 2.95 ms 0.83 ms Light scattering components 8x8 Local lights 1.1 ms +Sun scattering +0.5 ms +Temporal integration +0.4 ms
  36. 36. 36SIGGRAPH 2015 – Advances in Real-Time Rendering course Outline  Volumetric rendering  Volumetric shadows  More volumetric rendering in Frostbite  Conclusion
  37. 37. 37SIGGRAPH 2015 – Advances in Real-Time Rendering course Volumetric shadow maps  Additional extinction volumes  3 levels clip-map oriented on frustum  Required for out-of-view shadow casters  Store extinction  Volumetric shadow maps  3d textures store transmittance  Ortho/perspective mapping for point/spot lights
  38. 38. 38SIGGRAPH 2015 – Advances in Real-Time Rendering course Volumetric shadow maps  Part of our common light shadow system  Opaque  Particles  Participating media
  39. 39. 39SIGGRAPH 2015 – Advances in Real-Time Rendering course Particle volumetric shadows Default High quality option Selectable per emitter trilinear Sphere
  40. 40. 40SIGGRAPH 2015 – Advances in Real-Time Rendering course Performance: PS4  Ray marching of 323 volumetric shadow maps  Spot light: 0.04 ms  Point light: 0.14 ms  1k particles voxelization  Default quality: 0.03 ms  High quality: 0.25 ms
  41. 41. 41SIGGRAPH 2015 – Advances in Real-Time Rendering course Outline  Volumetric rendering  Particle volumetric shadows  More volumetric rendering in Frostbite  Conclusion
  42. 42. 42SIGGRAPH 2015 – Advances in Real-Time Rendering course Particle/Sun interaction  High quality scattering and self-shadowing for sun/particles interactions  Fourier opacity Maps [Jansen10]  Used in production now
  43. 43. 43SIGGRAPH 2015 – Advances in Real-Time Rendering course Physically-based sky/atmosphere  Improved from [Elek09] (Simpler but faster than [Bruneton08])  Collaboration between Frostbite, Ghost and DICE teams.  In production: Mirror’s Edge Catalyst, Need for Speed and Mass Effect Andromeda Mass Effect Andromeda, Bioware Need for Speed, Ghost
  44. 44. 44SIGGRAPH 2015 – Advances in Real-Time Rendering course Conclusion  Physically based volumetric rendering  Participating media material definition  Lighting and shadowing interactions  A more unified volumetric rendering system  Handles many interactions  Participating media, volumetric shadows, particles, opaque surfaces, etc. Physically-based volumetric rendering framework used for all games powered by Frostbite in the future
  45. 45. 45SIGGRAPH 2015 – Advances in Real-Time Rendering course Future work  Improved participating media rendering  Phase function integral w.r.t. area lights solid angle  Inclusion in reflection views  Graph based material definition, GPU simulation, Streaming  Better temporal integration! Any ideas?  Sun volumetric shadow  Transparent shadows from transparent surfaces?  Optimisations  V-Buffer packing  Particles voxelization  Volumetric shadow maps generation  How to scale to 4k screens efficiently
  46. 46. 46SIGGRAPH 2015 – Advances in Real-Time Rendering course References [Lagarde & de Rousiers 2014] Moving Frostbite to PBR, SIGGRAPH 2014. [PBR] Physically Based Rendering book, http://www.pbrt.org/. [Wenzel07] Real time atmospheric effects in game revisited, GDC 2007. [Mitchell07] Volumetric Light Scattering as a Post-Process, GPU Gems 3, 2007. [Andersson11] Shiny PC Graphics in Battlefield 3, GeForceLan, 2011. [Engelhardt10] Epipolar Sampling for Shadows and Crepuscular Rays in Participating Media with Single Scattering, I3D 2010. [Miles] Blog post http://blog.mmacklin.com/tag/fog-volumes/ [Valliant14] Volumetric Light Effects in Killzone Shadow Fall, SIGGRAPH 2014. [Glatzel14] Volumetric Lighting for Many Lights in Lords of the Fallen, Digital Dragons 2014. [Hillaire14] Volumetric lights demo [Lagarde13] Lagarde and Harduin, The art and rendering of Remember Me, GDC 2013. [Wronski14] Volumetric fog: unified compute shader based solution to atmospheric solution, SIGGRAPH 2014. [Karis14] High Quality Temporal Super Sampling, SIGGRAPH 2014. [Jansen10] Fourier Opacity Mapping, I3D 2010. [Salvi10] Adaptive Volumetric Shadow Maps, ESR 2010. [Elek09] Rendering Parametrizable Planetary Atmospheres with Multiple Scattering in Real-time, CESCG 2009. [Bruneton08] Precomputed Atmospheric scattering, EGSR 2008.
  47. 47. 47SIGGRAPH 2015 – Advances in Real-Time Rendering course Questions?  Thanks  The Frostbite rendering Team  Bioware, DICE, Ghost  Andreas Glad, Edvard Sandberg, Gustav Bodare, Fabien Christin, Mikael Uddholm, Simon Edgar and all the early tech adopters and collaborators.  Natalya Tatarchuk  For further discussions  sebastien.hillaire@frostbite.com  https://twitter.com/SebHillaire
  48. 48. 48SIGGRAPH 2015 – Advances in Real-Time Rendering course Bonus slides
  49. 49. 49SIGGRAPH 2015 – Advances in Real-Time Rendering course Volumetric shadow maps
  50. 50. 50SIGGRAPH 2015 – Advances in Real-Time Rendering course Volumetric shadows are important!  Correct secondary ray shadowing  Crucial for heterogeneous media  No volumetric shadow: approximate with 𝝈𝒕 at light position With volumetric shadows Without volumetric shadows
  51. 51. 51SIGGRAPH 2015 – Advances in Real-Time Rendering course Particles effect volumetric lighting  We already have shadow from sun  Cascaded translucent shadow  See [Andersson11]  Local lights: volumetric shadow maps  Cast shadows onto  opaque surfaces, other effects and transparents  participating media  Need to voxelize our particles
  52. 52. 52SIGGRAPH 2015 – Advances in Real-Time Rendering course Particle voxelization 1 - clear 2 - voxelize 3 – convert and add  Use an intermediate uint cascaded extinction volume  Extinction of 1.0f maps to 2048u  Voxelize using InterlockedAdd  Required for particleCount compute threads coherent write to memory Emitter Extinction volume UINT Extinction volume Float16
  53. 53. 53SIGGRAPH 2015 – Advances in Real-Time Rendering course Particle voxelization methods Default High quality option Selectable per emitter 2x2x2 cubepoint trilinear Sphere
  54. 54. 54SIGGRAPH 2015 – Advances in Real-Time Rendering course Discussion  Soft shadows   No sharp details  Shadows can flicker for moving lights  Under high extinction  Received by opaque, transparent, particles and participating media
  55. 55. 55SIGGRAPH 2015 – Advances in Real-Time Rendering course Particle voxelization consistency  Needs to be “extinction conservative”  For large voxel cascades, particles write more often into same voxels  Result in overshadow Without extinction normalisation With extinction normalisation - Per voxel, voxelize 𝝈𝒕′ as 𝝈𝒕′ = 𝝈𝒕 𝑣𝑜𝑥𝑒𝑙𝐶𝑜𝑢𝑛𝑡 ∗ 𝑣𝑜𝑥𝑒𝑙𝑉𝑜𝑙𝑢𝑚𝑒 - Per particle, 𝝈𝒕 given for unit cube  Distribute extinction per volume:
  56. 56. 56SIGGRAPH 2015 – Advances in Real-Time Rendering course Results

×