Your SlideShare is downloading. ×
Real-Time Global Illumination Techniques
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Real-Time Global Illumination Techniques

3,761
views

Published on

Published in: Technology

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,761
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
79
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Real-Time Global IlluminationTechniques 이장호 jangho.lee@gmail.com KASA Open Seminar, 2011.06.12
  • 2. 개요 Global Illumination 소개 Real-Time / for Games Indirect Lighting(Inter-reflections) Techniques – SSGI, RSM, SII, IR, ISM, CLPV 토의 및 결론
  • 3. Global Illumination Direct Illumination + Indirect Illumination Offline Techniques – Radiosity – Ray Tracing – Photon Mapping Cornell Box, 실제, 렌더링, 차이 [cu98]
  • 4. Local Illumination vs Global Illumination Local Illumination Global Illumination
  • 5. Direct, Indirect Illumination Direct Illumination Direct + Indirect Illumination, Shrek2 Indirect Illumination
  • 6. GI Equation [sc09] L ωr n Li θ x
  • 7. Radiosity Radiosity = 단위 시간, 단위 면적당 에너지 Patch 단위, Form Factor에 의해 면적당 에너지 계산, 누적 Diffuse-Diffuse Interaction 만 고려 Radiosity Patches Form Factor
  • 8. Ray Tracing 시야에서 광선 추적 (Reverse, View Dependent) Hit Object 마다 Lighting 계산, Reflected or Refracted로 확장 Path Tracing으로 Indirect Lighting 구현 가능 Screen Light Reflected Eye Refracted Shadowed Ray Tracing (Reflected, Refracted, Shadowed)
  • 9. Photon Mapping Light로부터 방출된 Photon 저장, Path Tracing으로 Rendering 2 Pass: Photon Tracing, Rendering Caustics, Sub-Surface Scattering 등에 빠른 계산 Photon Visualization Rendering
  • 10. Real-Time? 2011년 기준 상용 하드웨어, 상용 제품 – PC, XBox360, PS3 Pre-Computed + Direct Illumination이 대세 기존 GI 알고리즘의 직접 적용 – 실시간 Ray Tracing은 데모 수준 – 실시간 Radiosity는 단순화된 씬으로 가속, Enlighten/BF3 – Offline Renderer에 도움을 주는 역할 Indirect Illumination에 특화된 적용 – Diffuse Inter-reflection – 1 Bounce
  • 11. Lighting in Games Static Light & Static Geometry – Lightmap Dynamic Light & Static Geometry – PRT Static Light & Dynamic Geometry – Irradiance Volumes (Point Light Cloud) Dynamic Light & Dynamic Geometry – SSGI – RSM, SII – IR, ISM – CLPV
  • 12. SSGI Screen Space Global Illumination [ssdo09] SSAO(SSDO)를 Indirect Illumination으로 확장 D.I. 이후, 인접 Pixel을 간접 광원으로 사용 1 Bounce SSAO 대비 약 30% 추가 비용 – SSAO: 58fps – SSGI: 40fps – 1024 x768, N=16 – nVidia 8800 GTX SSDO SSGI
  • 13. SSGI Result
  • 14. SSGI SSAO와 동일한 장단점 화면 복잡도와 무관한 성능 잘못된 Occlusion: Depth, 각도 지역적: 반경 이상의 간접광 표현 못함 잘못된 Visibility: 각도 변화 잘못된 Occlusion: Depth
  • 15. RSM Reflective Shadow Maps [rsm05] Shadow Map을 Indirect Light Source로 활용 Shadow Map이므로, Light의 Occlusion을 내포 1 Light source, 1 Bounce RSM 생성을 제외하고, 화면 복잡도와 무관, 동일한 성능
  • 16. RSM Light 시점에서 RSM 생성, Depth(Position), Normal, Flux 각 픽셀을 Light Source로 간주 Light 시점에서 생성된 RSM Depth Position Normal Flux: Bright + Color
  • 17. RSM Fragment Shader(PS)에서 Indirect Illumination 계산 모든 픽셀을 누적 x의 Indirect Lighting 계산시 참조하는 RSM
  • 18. RSM Gathering – Potentially Important Samples – polor 좌표계, st(uv) 월드 분포의 거리가 RSM에서의 분포와 비례 면적당 Weight
  • 19. RSM Result – 9.1fps, 512 x 512, N=224, nVidia FX4000 Light 시점에서 생성된 RSM 최종 렌더링 결과
  • 20. Splatting Indirect Illumination RSM을 Gathering이 아닌 Shooting [sii07] Deferred Shading Instant Radiosity와 유사, Occlusion이 고려되진 않음 Importance Sampling
  • 21. Instant Radiosity VPL(Virtual Point Lights) 기반 [ir97][ir08] VPL을 생성하여 Direct, Indirect Light Source로 활용 Light에서 VPL생성 VPL로부터 Illumination 계산
  • 22. Instant Radiosity Result 최종 렌더링 VPL 배치
  • 23. Instant Radiosity Light Occlusion – Shadow Map을 이용 – 쉽지만, 비싼 비용 각 VPL당 Shadow Maps
  • 24. Instant Radiosity VPL Distribution – Path Tracing와 유사 – Shadow를 포함한 VPL의 누적 1차 바운스 … 4차 바운스 렌더링 결과누적
  • 25. Imperfect Shadow Maps Instant Radiosity 기반 [ism08] Indirect Lighting은 매우 부드럽게 변함 VPL의 기여도는 매우 작음
  • 26. Imperfect Shadow Maps Low Quality Depth Maps로 충분 – Point-Based Rendering으로 Depth Map 생성
  • 27. Imperfect Shadow Maps Point-Based Depth Maps을 이용한 렌더링 Pull-Push Hole Filling은 인접 Depth를 이용한 평균
  • 28. Imperfect Shadow Maps Result – nVidia 8800GTX
  • 29. Imperfect Shadow Maps Result: Bounce – 1024 x 1024, nVidia 8800GTX 14.0fps, 1024 VPL 7.5fps, +256 VPL(bounce) 5.5fps, +256 VPL(bounce) * 2
  • 30. Imperfect Shadow Maps Result: Comparison ISM, 11fps, 256^2, 8k VPL Path Tracing, hours
  • 31. CLPV Cascaded Light Propagation Volumes [clpv09] [clpv10a] [clpv10b] Propagation Volumes – lit surfaces 샘플링, 2차 라이트 소스 – 3D Grid 안에 Clustering – 각각의 셀에 전파 RSM 3D Cell에 Clustering 전파
  • 32. CLPV Sampling Depth – RSM 기반 샘플링 Normals Albedo Lit Surfel 샘플링 RSM
  • 33. CLPV Clustering 3D Cell에 Clustering
  • 34. CLPV Propagation VPL VPL VPL RSM Radiance Volume Clustering 인접 Cell에 전파, 반복 정규화된 Grid Cell에 SH로 표현
  • 35. CLPV Propagation 0 Iterations, only Injection
  • 36. CLPV Propagation 4 Iterations after Injection
  • 37. CLPV Propagation 6 Iterations
  • 38. CLPV Propagation 8 Iterations
  • 39. CLPV Depth Normals Albedo
  • 40. CLPV Cascaded – Multi-Resolution Approach – Cascaded Shadow Maps와 유사 – 근접한 곳에 더 디테일한 정보 – 렌더링시에 해상도별 동시 참조 3단계 Cascaded LPV
  • 41. CLPV Global Illumination Off
  • 42. CLPV Global Illumination On / 1 LPV
  • 43. CLPV Global Illumination On / 3 LPVs
  • 44. CLPV 높은 성능 – 32^3 Grid, 8 Iterations, 1280 x 720 – GTS250 2.4ms (RSM 256 x 256) – Xbox360 2.4ms (RSM 128 x 128) – PS3 3.0ms (RSM 128 x 128) – Frame Skipping 및 Camera 변화에 따른 조절로 1~2ms 수준 최적화 GPU Friendly 안정적인 결과 – Scene 복잡도 무관 – Flicker-Free
  • 45. 토의 및 결론 Lighting Keywords – Lightmap – Image Based Lighting – Deferred Lighting – Real-Time GI 환경, 품질, 성능에 따라 선택, 혼용 GI로 수렴될 것으로 예상?!
  • 46. 참고 문헌 [cu98] The Cornell Box http://www.graphics.cornell.edu/online/box/ [sc09] Real-Time Global Illumination for Dynamic Scenes, Siggraph Course, Carsten Dachsbacher, Jan Kautz, 2009 [ssdo09] Approximating Dynamic Global Illumination in Screen Space, Tobias Ritschel, Thorsten Grosch, Hans-Peter Seidel, I3D, 2009 [rsm05] Reflective shadow maps, Carsten Dachsbacher and Marc Stamminger, I3D, 2005 [sii07] Splatting Indirect Illumination, Carsten Dachsbacher and Marc Stamminger, 2007
  • 47. 참고 문헌 [ir97] Instant radiosity, Alexander Keller, SIGGRAPH, 1997 [ir08] Instant Radiosity An Approach for Real-Time Global Illumination, Martin Kinkelin and Christian Liensberger, 2008 [ism08] Imperfect shadow maps for efficient computation of indirect illumination, Tobias Ritschel et al., SIGGRAPH Asia, 2008 [clpv09] Light Propagation Volumes in CryEngine 3, Anton Kaplanyan, SIGGRAPH Course, 2009 [clpv10a] Real-time Diffuse Global Illumination in CryENGINE 3, Anton Kaplanyan, SIGGRAPH Course, 2010 [clpv10b] Cascaded Light Propagation Volumes for Real Time Indirect Illumination, Anton Kaplanyan and Carsten Dachsbacher, I3D, 2010