Inferred Lighting
Upcoming SlideShare
Loading in...5
×
 

Inferred Lighting

on

  • 3,542 views

 

Statistics

Views

Total Views
3,542
Views on SlideShare
3,493
Embed Views
49

Actions

Likes
3
Downloads
45
Comments
0

2 Embeds 49

http://guardin.tistory.com 33
http://www.slideshare.net 16

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Inferred Lighting Inferred Lighting Presentation Transcript

  • Inferred Lighting:Fast Dynamic lighting and shadows for opaque and translucent objects
    original paper by Scott Kircher, Alan Lawrance
    http://cafe.naver.com/shader
    임용균 (guardin@naver.com)
  • Forward Rendering
    많은 동적 라이팅(dynamic lighting)
    라이트가 많아질 수록 성능이 급격히 낮아짐
    다양한 재질(material)
    알파 오브젝트의 라이팅과 그림자
    하드웨어 MSAA
  • Deferred Shading
    Geometry Pass
    조명 계산에 필요한 속성들(Color, Depth, Normal, Specular)을 프레임 버퍼와 동일한 크기의 텍스쳐(G-Buffer)에 렌더링
    Light Pass
    각각의 조명에 대해 영향 받는 픽셀들을 라이팅하여 프레임 버퍼에 누적
    실제로 보이는 픽셀만 라이팅
  • Deferred Shading
  • Deferred Shading
    많은 동적 라이팅(dynamic lighting)
    높은 성능
    다양한 재질(material) 표현이 어려움
    알파 오브젝트의 라이팅과 그림자
    하드웨어 MSAA 지원을 받지 못함*
  • Light Pre-Pass Rendering
    Geometry Pass
    조명 계산에 필요한 속성들(Depth, Normal)을 최소화하여 프레임 버퍼와 동일한 크기의 텍스쳐(G-Buffer)에 렌더링
  • Light Pre-Pass Rendering
    Light Pass
    각각의 조명에 대해 영향 받는 픽셀들을 라이팅하여 프레임 버퍼와 동일한 크기의 텍스쳐(L-Buffer)에 렌더링
  • Light Pre-Pass Rendering
    Material Pass
    프레임 버퍼에 Forward Rendering을 하면서 L-Buffer의 결과를 참조하여 L-Buffer * Material로 최종 color값을 계산한다.
  • Light Pre-Pass Rendering
    많은 동적 라이팅(dynamic lighting)
    높은 성능*
    다양한 재질(material)
    알파 오브젝트의 라이팅과 그림자
    하드웨어 MSAA*
  • Inferred Lighting
    많은 동적 라이팅(dynamic lighting)
    높은 성능
    다양한 재질(material)
    알파 오브젝트의 라이팅과 그림자
    하드웨어 MSAA
  • Main Idea
    저해상도/고해상도(mixed) 버퍼를 사용
    Geometry Pass
    G-Buffer를 Back Buffer보다 작은 사이즈로 렌더링
    Light Pass
    G-Buffer를 이용하여 라이팅 결과를 L-Buffer에 렌더링
    Material Pass
    Scene을 Forward Rendering하면서 L-Buffer의 결과에 Material을 적용한다. (Up Sampling)
    DSF(Discontinuity Sensitive Filtering)를 이용해 저해상도->고해상도로 up-sampling
  • Inferred Lighting
    Geometry Pass: 800x450
    Light Pass: 800x450
    Material Pass: 1280x720, 8x MSAA
  • DSF (Discontinuity Sensitive Filtering)
    저해상도->고해상도 up-sampling 되면서 극심한 edge aliasing이 발생
    Bilinear filter
    DSF
  • Determining Lighting Sample Validity
    normal과 depth를 비교
    Bilateral filtering
    Slow
    • Two textures
    • Nonlinear depth
    • Normal reconstruction
  • DSF Buffer
    Linear Depth (red)
    Object/Instance ID (green)
    Normal Group ID (blue)
    Single ID in DSF buffer
    (DSF ID)
  • Using DSF Buffer
    Albedo, etc…
    Depth와 ID를 비교한다.
    bias bilinear filtering weights
    material 정보와 결합
    Depth
    DSF ID
    Pixel Shader
    Fetch
    Fetch
  • Light Pre-Pass Rendering (33fps)
    DSF
  • Inferred Lighting (40fps)
    DSF
  • Inferred Lighting vs. Forward Rendering
    101 objects, 81 lights. (xbox360)
    Inferred Lighting: 29.4ms (34fps)
    Forward Rendering: 167ms (6fps)
  • References
    http://graphics.cs.uiuc.edu/~kircher/publications.html
    [GDC04] Deferred Shading (Shawn Hargreaves)