Your SlideShare is downloading. ×
0
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
11_SH를 이용한 실시간 투명 근사법
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

11_SH를 이용한 실시간 투명 근사법

960

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
960
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
15
Comments
0
Likes
1
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. SH를 이용한 실시간 투명 근사Fast Real-time Translucent Rendering<br />김성익(noerror@softnette.com)<br />소프트네트<br />2011/05/29<br />
  • 2. 투명 재질<br />빛이 표면에서 전부 반사하거나 통과하지 않고 일부 내부에서 산란하여 통과하는 재질<br />http://www.cs.virginia.edu/~rw2p/cs647/project.htm<br />
  • 3. BTDF<br />일반적인 BRDF에는 미포함BSSRDF (BRDF 내하 산란 항을 추가한 것으로 투과와는 성격이 약간 다름)<br />투과 속성을 가진 BTDF항 추가<br />투과도가 필요재질 내부 특성이 균일하다고가정하면 깊이가 필요<br />Wikipedia:Bidirectional_scattering_distribution_function<br />
  • 4. 실시간 투명 렌더링<br />깊이 값을 근사하여 투명도 결정<br />깊이 텍스처를 이용<br />텍스처 스페이스<br />SH를 이용한 근사법 제안<br />
  • 5. 깊이 텍스처를 이용<br />Translucent Shadow Map<br />1. 깊이 맵을 이용<br />라이트의 시점에서 깊이 렌더링(그림자 맵과 동일)<br />임의의 점의 라이트 거리와 TSM에 저장된 거리 차이<br />2. 두 채널을 이용<br />R에는 거리, G는 Far에서의 거리를 Write<br />블랜드는Min<br />결과적으로는 가까운 거리는 R, 먼 거리는 1-G<br />두 값 차이를 이용하여 깊이 계산<br />http://www.gamerendering.com/2009/09/25/render-thickness/<br />
  • 6. 깊이 텍스처를 이용<br />단점<br />렌더링 패스 증가로 인한 성능 이슈<br />해상도로 인한 실루엣 알리아싱 문제<br />Convex한 물체에만 유효<br />
  • 7. DICE(GDC2011)<br />GDC2011:Approximating Translucencyfor a Fast, Cheap and Convincing Subsurface Scattering Look<br />쉽고 빠른 근사가 목표<br />
  • 8. DICE(GDC2011)<br />표면의 투과도를 미리 Bake<br />텍스처 스페이스에서 계산 (픽셀 별로)<br />표면의 노멀 반대 방향으로Ambient Occlusion 계산하는 방식으로 계산<br />값을 인버스 하면 투명도의 근사값을 구함<br />
  • 9. DICE(GDC2011)<br />재질의 특성에 맞도록 투과를 계산<br />표면의 투과도를 곱해서 최종 투과 라이트 값을 구함<br />Convex한 객체에 최적화됨<br />
  • 10. Spherical Harmonics<br />구면 조화함수<br />컨셉은푸리에 변환이나 라플라스 변환 같은 값의 도메인을 이동하는 계열과 유사하게 생각하면 됨<br />계수가 많을 수록 입력 값과 유사해짐낮은 주파수 영역대가 근사값에 큰 역할을 함<br />압축하는 의도라고 생각해도 크게 틀리지 않음<br />
  • 11. Spherical Harmonics<br />구면 조화함수 그래픽스 응용<br />입력 구형 이미지 => SH 계수<br />SH계수 => 구형이미지<br />계수가 많다면 입력 이미지를 복원하겠지만, 전역광의 경우 의도적으로 블러링하여 사용하기 때문에 그냥 적은 개수의 계수를 사용하면 블러링한 결과와 동일 GOOD<br />연산이 가볍고 적은 개수의 계수로도 훌륭한 품질의 결과물이 나와서 실시간 렌더링에서 많이 사용<br />http://www.cs.berkeley.edu/~ravir/<br />
  • 12. SH를 이용한 투명 재질<br />컨셉: SH를 이용하여 방향성 있는 투명도를 구하자<br />절차<br />깊이 계산이 필요한 위치에서 방향 별 깊이 값을 연산(불투명도)<br />SH계수를 이용하여 압축 (손실은 있으나 내부 산란 특성을 고려하면-투명도의 저주파성- 오히려 블러링 생략의 이득)<br />렌더링시노멀을 이용해 방향성 있는 투명도 얻기<br />
  • 13. SH를 이용한 투명 재질<br />http://www.youtube.com/watch?v=_UMpeSEAwik<br />
  • 14. SH를 이용한 투명 재질<br />버텍스 단위 계산<br />퍼 픽셀로 계산하기 위해선 float 텍스처 여러 장이 필요함<br />투명 재질의 내부 산란 특성 때문에 높은 해상도의 데이터는 불필요<br />버텍스의스트림에버텍스의SH계수를 전달 (3개의 texture coordinate가 필요)<br />
  • 15. SH를 이용한 투명 재질<br />버텍스에서 전 방향의 두께를 구함<br />빛의 입사에 따라 깊이 값이 달라지므로<br />임의의 개수의 ray를 발사해서 구하기<br />필요하다면 다층의 길이를 합산 가능<br />단순 합산이 물리적으로는 맞지 않을 수도 있으나 convex하지 않은 객체도 근사 가능<br />
  • 16. SH를 이용한 투명 재질<br />대 부분 노멀 방향에서 좌우로 퍼지는 모양을 하고 있음<br />탄젠트 스페이스로 계산<br />값의 엔트로피 감소<br />SH계수로 변환 시 좀 더 손실이 적음<br />
  • 17. SH를 이용한 투명 재질<br />계산한 깊이 값으로 SH계수 구하기<br />정확한 깊이 값을 구하는 게 목표는 아니므로 적당히 노멀라이징<br />실제로는 깊이 보다는 투명도가 필요한 것<br />
  • 18. 장점<br />빛의 방향에 따른 투명도가 적용된다<br />
  • 19. 장점<br />스키닝 객체에도 적용이 가능하다<br />빛의 방향을 탄젠트 스페이스 좌표로 옮기면 끝<br />애니메이션 객체에도 적용 가능하다<br />어클루더가 움직이기 때문에 물리적으로 올바르지 않지만 방향성을 정상적이기 때문에 납득할 만한 품질<br />
  • 20. 장점<br />버텍스셰이더에서 간단한 SH만으로 계산 가능<br />저사양에서도 전혀 부담 없는 연산 비용<br />Convex가 아닌 객체도 쉽게 구할 수 있음<br />GDC2011:Dice도 같은 조건이지만 convex 언급한 것은 AO를 통해서 굽는 방식적인 부분 때문으로 TSM의 한계와는 다른 이슈(현 방식의 SH 상수항만 사용하면 Dice와 동일)<br />납득할만한 퀄리티<br />
  • 21. 질문/답<br />

×