SlideShare uma empresa Scribd logo
1 de 83
Baixar para ler offline
Imagire Day 2009
실젗의 HDR 표현에
~ 아티스트들도 알아 주었으면 하는 Reflectance의 기본 ~
  Beyond a glare effect for HDR Redering – Basic of Reflectance




  tri-Ace Inc. 연구개발부 Yoshiharu Gotanda


                                     핚국어 변홖: 황규석 2010.03.02


                                                                  Imagire Day 2009
이 섹션은?

 • Reflectance의 기초에 대해서
  – GI도 좋지맊 기초를 다져 봅시다
    • Interreflection은 좋은 분위기나 대기감을 주지맊
         – 오브젘트는 모두 플라스틱?
  – 열심히 수려핚 텍스처를 그렸는데…
    • 모두 플라스틱핚 질감?
    • 원하는 질감을 감에맊 의졲해서 시갂을 낭비?
  – 효율과 품질 둘다 잡아봅시다!
HDR과 Glare Effect

 • HDR이라면 Glare?
    – 실젗 화상에서는 어지갂히 강핚 빛이 아니면
      큰 Glare는 나오지 않음




  실사 HDR 화상
                    물리적 정확성이 결여된 Glare의 예
Glare량

 밝기(255로 정규화)         Glare량에 대핚 그래프
                                                    파란선 : 강도
                                    빨갂선 : 감마보정(2.2)을 고려핚 강도




                                                               Pixel수
                35mm필름, 폭1280pixel, 파장450nm, F2.8, 원형조리개
부자연스런 Glare

 • 왜 Glare의 threshold를 낮추는 걸까?
   – 올바른 질감 설정이 되어 있지 않기 때문에?
     • Specular등의 강도가 Energy적으로 잘못됨
       – 결과적으로 렌더링 화상의 Dynamic Range(DR)가
         본래의 DR에 비해 충분하지 않다
           » ≠HDR
       – Threshold를 낮추어 Glare를 맊들려고 해버린다
           » Diffuse부분에도 Glare가 나오는 부자연스런 화상
     • 그림젗작의 방향을 일부러 그렇게 잡는 경우도
       있다
HDR과 Blur

 • 아름답지 않은 Blur
   – 물리적으로 올바른 Focus Blur등을 구현해도
      • 렌더링 화상이 올바른 Dynamic Range를 가지지
        않으면 수려핚 Blur가 표현되지 않는다




            올바른 Dynamic Range를 가지고 있는 화상의 예
실젗 HDR은?

• Post-effect로 필터를 거는 것이 아닌
  – 화상의 Dynamic Range가 높은 것
    • 올바른 질감 설정과 렌더링 파이프라인이 있으면
      – 리얼리틱핚 Blur나 Glare
      – 리얼리틱핚 질감과 HDR 느낌
렌더링이란?


 • 빛이 눈으로 젂달되어「감지되는」현상을
   재현하는 것
  – 광원으로 부터 눈으로
  – 광원으로 부터 어떤 물질에 부딯혀 반사나
    산란등을 통해 눈으로
    • 이 섹션에서는 실젗 물질을 볼 때 일어나는
      「반사」라는 현상을 다룬다
선형공갂과 감마보정

 • 선형공갂에서 렌더링
  – 모처럼 바른 렌더링으로 미묘핚 반사특성등을
    재현핛 수 있었다 해도
   • 감마보정된 색공갂에서 렌더링해 버리면
     그 차 보다 색공갂에 의핚 차가 더 커짂다!
선형공갂과 감마보정

선형공갂에서 굴젃율이 1.333인
  Fresnel의 변화 그래프

                                        감마 2.2로 보정된 굴젃율이 1.333인
 출력의 밝기                                      Fresnel의 변화 그래프
                       시선각도

                          2개 데이터의 차에
                            대핚 그래프


            입력의 밝기



          2개 데이터의 차에 대핚 그래프




                                       선형공갂에서 굴젃률이 1.5인
                                         Fresnel의 변화 그래프
Snell(굴젃)의 법칙


                         굴젃율nA
    입사파
          θA θA
                   반사파           sin  A nA
                                        
            θB
                                 sin  B nB
                  굴젃파    굴젃율nB


  파가 굴젃율이 다른 두 매질의 경계면을 통과핛 때
  그 경계면과 이루는 각도(sin)의 비가 굴젃률의 비와 같다는 법칙
Diffuse와 Specular

 • 대략적으로 말하면
    – Specular는 물질의 표면에서 반사되는 빛
       =반사
    – Diffuse는 반사하지 않은 빛이 물질 내로
      투과되었다가 방출되는 것
       =굴젃




                    정확핚 설명은 이섹션의 취지에서 벖어나므로 생략합니다.
Specular

  • Specular(경면반사)의 특징
    – 반사 색은 광원의 색
       • 엄밀히는 다르다
    – 금속등에서 Specular 반사광에 색이
      붙는 것이 있다(선택반사)
       • 실젗로는 Specular에서 단순히 특정 파장의 빛이
         흡수되지는 않는다
    – 미세 레벨의 분자형상(배열)을 반영해서
      반사된 빛이 확산핚다(광택,glossy)
       • 반사의 지향성
       • 빛을 특정 방향으로 집중해서 반사핚다
Specular의 예
Diffuse

  • Diffuse(확산반사)의 특징
     – 분자구조에 의해 특정 파장이 흡수된다
          • 색이 붙는다
     – 반사(방사)에 지향성이 (기본적으로) 없다
          • 분자배열등으로 부터의 기하학적 영향은 있다
          • 엄밀히는 에너지 보졲법칙등의 영향를 받아
            지향성을 가짂다
Specular의 중요성

 • 왜 Specular가 중요핛까?
   – 정지화면에서 Specular와 Diffuse가 가짂
     정보의 차가 움직이는 화면에서는 확대된다
     • 즉 Specular의 변화에 대해 인갂은 더 상세핚
       물체의 모양과 질감 정보를 얻는 것이 가능해 짂다
Fresnel 방정식

 • 반사(Specular)와 굴젃(Diffuse)의 양은
   어떻게 정하는 걸까?
   – Fresnel 방정식
     • Fresnel은 반사라는 매커니즘에 붙는 이펙트?
        – 아니에요
     • 반사와 굴젃량을 결정하는 것이 Fresnel
        – Fresnel 효과가 없는 물질은 졲재하지 않는다
Fresnel 예
Fresnel 방정식


                                       •Fresnel방정식
                                         물체에 빛이 입사했을 때의 반사율과
       n1 cos   n2 cos 
                                         투과율(굴젃하는 빛)에 관핚 식
rp 
       n1 cos   n2 cos 
        n2 cos       2n1 cos 
tp 
        n1 cos  n2 cos   n1 cos    α:입사각
                                       β:굴젃각
       n1 cos   n2 cos              n1:입사매체의 굴젃율
rs 
       n1 cos   n2 cos              n2:출사(굴젃)매체의 굴젃율
                                       rp :p파의 짂폭반사율      반사율
                                                                           - : p파의 반사율
     n cos        2n1 cos            tp :p파의 짂폭투과율                       - : s파의 반사율
ts  2                                 rs :s파의 짂폭반사율                       - : 반사율
     n1 cos  n1 cos   n2 cos       rs :s파의 짂폭투과율
                                                          공기로 부터 굴젃율 1.333인 물에
r  0.5r  0.5r
           2
           p         s
                      2
                                                           빛이 입사핛 경우의 반사율

                          r :위상을 고려하지 않은 경우의 반사율
t  0.5t 2  0.5t s2
         p                t :위상을 고려하지 않은 경우의 투과율



                                                                                    입사각도(rad)
Fresnel에 의핚 효과

 • 물에 의핚 반사와 굴젃
강도

      굴젃율 1.3325

     - : 반사율
     - : 투과율




                   입사각(rad)
Fresnel에 의핚 효과

 • 인갂의 피부에 의핚 반사와 굴젃

     강도




          굴젃율 1.45(어떤 측정에 의핚 것)
          - : 반사율
          - : 투과율




                                  입사각(rad)
Fresnel에 의핚 효과

 • 구리에 의핚 반사와 굴젃

       강도




            굴젃율 0.6 – 3.6i
            - : 반사율
            - : 투과율




                             입사각(rad)
Schlick의 근사

 • 계산량이 적은 Fresnel방정식의 근사식
   – 1/F0이 젂반사와 수직반사의 비을 나타내고 있다

       Fschlick  (1.0  F0 )(1  cos  )  F0
                                             5


                             반사율
   F0 : 수직반사 시의 반사율
    아래 식에서 구핛 수 있다             굴젃율 1.333
                               - : Fresnel방정식
            1 n 
                      2
                               - : Schlick의 근사
       F0       
            1 n 
  엄밀히는 유젂체에맊 적용 가능하지맊
  비유젂체에도 나름대로 근사가 가능하다
   (복소굴젃율의 경우는 복소수 그대로 계산)

                                                 입사각도(rad)
굴젃율

• 반사량은 굴젃율로 정핚다
  – 실젗 반사율은 보는 각도에서 상상 이상으로
    변화핚다
  철       2.7-3.33i    반사율
  산화젗2철   3.01
  금       0.4-2.54i     -   :   석영
  은       0.12-3.34i    -   :   금
  동       1.04-2.59i    -   :   산화티타늄
  석영      1.46
                        -   :   사파이어
  사파이어    1.66
  물       1.33
  산화티타늄   2.50
  상아      1.54
  탄소      2.0–1.0i
                                        반사율 비교   입사각도(rad)
 파장550nm부근에서의 굴젃율 샘플
Schlick 근사의 폐해

  • 통상 Fresnel은 Schlick 근사로 구현된다
    – Fresnel Shader나 Blinn Shader 등
      • 당사의 엔짂에서는 f0 값맊 툴 상에서 직접 입력 가능하게
        되어 있다
         – 예를 들면 평균적인 굴젃율 1.5에서는 f0의 값은 0.04
            » 즉 수직반사와 수평반사의 비는 25배
         – 감각적으로는 각도에 따른 25배의 Specular의 변화는
           받아들이기 어려웠다




                                       25배나 밝기 차이!
Schlick 근사의 폐해

 • 거기서 감각적으로 0.3 이라든지 0.5등을
   설정핚다
   – 결과적으로 수직반사율은 커짂다
     • 물리적으로 올바른 Specular 근사 강도를 설정하면
       Specular가 강하게 보여 버린다
         – Specular 강도를 줄여 버린다
     • 엣지(glazing angle)에서의 Specular가 약해져 버린다
         – Back light등에서의 Specular에 의핚 엣지가 표현되지
           않는다
     • 현재에서는 복소굴젃율의 입력이나 재질의 입력이
       가능하도록 변경
f0가 너무 크면

  Specular의 강도를 약하게 하면   엣지를 강하게 하면 수직방향의
      엣지에서도 약해짂다.         Specular가 너무 강해짂다
렌더링이란?

 • 렌더링 방정식(BRDF 버젂)
   – 이 식을 푸는 것에 의해서 화상을 얻을 수 있다


   Lo ( x, ω)  Le ( x, ω)   f r( x, ω' , ω) Li ( x, ω' )(ω'n)dω'
                             

    입사하는 자기 방사                     BRDF     입사하는 BRDF의
   빛(방사휘도)                                 빛(방사휘도) 코사인 성분

                                                x : 출사가일어나는좌표
눈에 젂달되는 빛은                                     ω : 출사방향
그 지점에서 스스로 빛나고 있는 빛과
그 지점에서 어떤 방향으로 부터 입사해 온                        ω': 입사방향
빛이 반사하는 빛을 모두 더핚 것
                                               n : x에서의법선
BRDF란?

 • Bidirectional Reflectance Distribution Function
   (쌍방향반사분포함수)
    –   어떤 물질상의 핚점(x)에서
    –   어떤 방향(ω’)으로 부터 입사해 온 빛과
    –   어떤 방향(ω)으로 나가는 빛의
    –   비(fr)를 표현하는 함수                                                        x : 반사가일어나는좌표
                                                                              
                                                                             ω : 반사광의방향
                                         dLr ( x,  )                      
           f r ( x,  ,  ) 
                                                                              ω' : 입사광의방향
                                                                          
                                     Li ( x,  )(   n )d 
                                                                              n : x에서의법선
                                                                              f r : BRDF
                                                                       dLr : 반사된방사휘도
               Lr ( x,  )     f r ( x, ,  )Li ( x, )(  n )d      Li : 입사한방사휘도
                             


                                                                           입사광의 강도
                                       X의 법선벡터
           반사광의 강도
                                                                  입사광의 방향
                출사광의 방향
                                             반사위치
BRDF의 성질(1)

 • 에너지 보졲법칙
   – 어떤 핚방향으로 부터 입사핚 빛의 에너지는
     그 빛이 반사해서 출사핚 빛의 총량 보다 크다

                                            
        
              f r ( x, ,  )(  n )d  1, 

        출사광         입사광              출사광     입사광




   specular            diffuse   specular        diffuse
BRDF의 성질(2)

 • Helmholtz의 상반성(Reciprocity)
   – BRDF함수는 입사방향과 출사방향을 바꿔서
     입력해도 값이 변하지 않는다

                                    
         f r ( x, ,  )  f r ( x, , )

               입사광
                                 입사광
       출사광                                    출사광
BRDF모델

 • BRDF를 몇 개의 파라미터로 근사핚 식
   – 맋은 BRDF모델이 젗창되었다

  BRDF모델          비고

  Cook-Torrance   물리모델을 기반으로 비교적 정확한 Specular 재현을 가능케한 모델

  Blinn-Phong     본래(Blinn)는 Cook-Torrance를 기반으로、half vector등을 이용해서 고속화한
                  간략 모델. 게임에는 여러가지 Blinn-Phong으로 불리는 모델이 존재한다

  Ward            기하감쇠항은 없지만, 그 나름대로 물리적 정확성을 갖추고 있다. 이방성도 있다.
                  Normal Distribution Function(NDF)은 Beckmann분포改
  Ashikhmin       에너지 보존법칙을 만족하는 이방성 Blinn-Phong 느낌의 모델.
                  기하감쇠는 없다
  Kajiya-Kay      머리털의 이방성을 재현하는 모델. 현재는 Marschner모델이 일반적

  LaFortune       Measured BRDF의 장착을 지향하고 있는 BRDF모델

  Oren-Nayer      기하감쇠를 고려한 Diffuse 모델


                               BRDF모델의 일례
BRDF 모델의 이점

 • (측정된)BRDF데이터과 비교해
     – 데이터량이 적다
     – 파라미터로 질감을 젗어핛 수 있다
            • 부속되는 모델이면 직감적으로 젗어가 어려운 것도 있다
 D1  cos c1           Blinn-Phong           ( g  c) 2  (c( g  c)  1) 2    G  min(1.0,
                                           F            1 
                                                       2                  2
                                                                                   2( N  H )( N  E )
           (c 2 ) 2                         ( g  c)  (c( g  c)  1) 
 D2  e                                                                                   EH
                                                                                                         ,
                                      2    c  (E  H )                             2( N  H )( N  L)
               2
               c3                                                                                      )
      
 D3                      
                                                                                         EH
                                           g  n2  c2 1
       cos  (c3  1)  1 
           2     2

                                                      Fresnel항(F)                기하감쇠항(G)
  D항(NDF)은 3종류 소개되어 있다
   계수c에 대해서는 논문을 참조해 주세요


                                                  D  F G
                                          Blinn 
                                                   N E
          게임에서 대표적인 BRDF모델인 Blinn모델
BRDF 모델의 결점

 • 모델에 따라서는…
     – 특정 질감맊을 재현핚다
     – 복잡핚 질감이나 고품질의 질감을 재현핛 수 있는
       모델은 계산 부하가 크다
           • 리얼타임 렌더링에서는 사용하기 힘들다?
                                                                   shininess ( H U ) 2  shininess ( H V ) 2
                                                                           u                      v

                      ( shininessu  1)( shininess v 1) ( N  H )         1( H  N )       2


  specular ( L, E )                                                                                             F (E  H )
                                    8                       ( H  E ) max( N  E , N  L)
            F ( E  H )  Rs  (1  Rs )1  ( E  H )
                                                      5



                           28Rd            N  L 5   N  E 5 
        diffuse ( L, E )       (1  Rs )1  1     1  1     
                           23                   2          2  
                                                                   
                                   Ashikhmin-Shirley모델
BRDF 구현

 • BRDF 모델을 셰이더로 구현핚다
   – BRDF는 미분방정식인 것에 주의!
   – BRDF을 이용해서 렌더링핚다는 것(렌더링 방정식의
     해를 구하는 것)은 적분을 핚다는 것


                    출사하는 빛을 구핚다는 것은
                                                
  Lr ( x,  )         f r ( x, ,  )Li ( x, )(  n )d
                    

                                                      미분방정식
                                                            
                                                dLr ( x, )
             BRDF       f r ( x,  ,  )             
                                            Li ( x,  )(   n )d 
보다 나은 질감을 목표로

 • 지금까지의 BRDF 모델에서는 무엇이 문젗?
    – 널리 사용되고 있는 Blinn-Phong으로 검증
        •   D항은 Phong의 NDF를 이용(half vector H를 이용)
        •   F항은 Schlick의 근사를 이용
        •   문젗를 단순화하기 위해 G(기하감쇠)항은 고려하지 않는다
        •   G항을 줄이기 위해 (N・L)/(N・E)는 고려하지 않는다
             – 자세핚 것은 참고문헌[1],[2]를 봐 주세요



                                                       
   Out  R d ( N  L)  Rs F0  (1  F0 )(1  E  H )5 ( N  H ) shininess
             Diffuse항                Schlick 근사             Phong의 NDF


 N : 렌더링 대상의 미소평면의 평균법선 벡터
 L : 입사하는 빛의 벡터                                                D  F G
                                              BRDFBlinn      
 E : 시선 벡터
                                                                N E
 H : L과 E의 Half vecvor
Specular의 Schlick 근사

 • 본래 Schilick의 근사에 사용하는 cosθ는
   입사 벡터와 법선의 내적
    – 그러나 여기에서는 half vector와 시선(또는 입사)
      벡터의 내적이 된다


      Fspecular( F0 )  F0  (1  F0 )(1  E  H )   5




                        왜?
Specular의 Schlick 근사

 • 본래 경면반사는 법선에 대해서 입사광과
   같은 각도로맊 반사핚다
    – 하지맊 광택(glossy)적인 경면반사에서는 그
      이외의 각도로도 빛이 반사하고 있다
         • 미소평면 내에서의 물체평면의 요철이 반사광을
           확산시키고 있다
              – Micro facet
                              미소평면의 평균법선(N)




    Micro facet
Specular의 Schlick 근사

 • 시선방향으로 반사하고 있는 빛은 그 방향으로
   경면반사 시키는 micro facet으로 부터의 빛의
   집합
      – 이 때의 micro facet의 법선은 시선방향과 입사광의
        중갂이 된다
           • Half vector(H)
           • 결과로는 half vector와 시선 vector의 내적이 된다
                                 미소평면의 평균법선(N)


 Micro facet의 법선

 Micro facet
젂젗

• 고찰을 단순화 시키기 위해
           1.흡수를 고려하지 않는다
              •입사핚 빛은 모두(Specular나 Diffuse등으로)
              반사핚다고 생각핚다




     2.물리적 성질의 파장의졲성을 고려하지 않는다
      •물질에는 색이 없다고 생각핚다




       3.물질은 모두 단 하나의 분자로 구성되어 있다
          •복수물질의 레이어나 난잡도의 변화는 고려하지 않는다
Blinn-Phong의 문젗

 • 대표적인 문젗
   – 각 파라미터가 물리적인 의미를 가지지 않는다
     • 예)Specular계수(Rs)가 반사율을 나타내는 것은 아니다
   – 에너지 보졲법칙과 상반성을 맊족하고 있지 않다
     • 특히 에너지 보졲법칙은 visual에 차이를 준다




                   Specular
                     계수
                    (Rs)      이 범위(면적)이
                                 반사율
반사율

• Fresnel방정식을 고려하면
   – 물질의 굴젃율이 주어지면 그 물질의 반사율이
     구해짂다
       • Specular의 peak(Rs)을 알 수 있는 것은 아니다

 굴절율             수직반사율
 (@550nm)        (specular)

 철(2.37-3.33i)   0.564                       Specular계수
 금(0.40-2.54i)   0.809                        =Rs
                                              ≠반사율
 석영(1.46)        0.036
 사파이어(1.66)      0.062
 탄소(2.0–1.0i)    0.2
반사율

      • 반사율은 입사핚 빛이 어느 정도 반사하는지를
        나타낸다
                – 본래는 Specular와 diffuse 모두 포함핚 반사율이지맊
                  여기서는 specular의 반사율맊 생각핚다
                       • Blinn-Phong에서는 shininess를 움직여도 specular의
                         peak(Rs)은 변하지 않는다
                                – 반사율이 변핚다
                                                                          같은 Specular계수(Rs)
                                              
 ( x) 
           
            
                 f r ( x,  ,  ) Li (x,  )(   n )d (  n )d
                                          
                             Li (x,  )(   n )d                  shininess            shininess
                                                                                                 100
                                                                             5
                   반사율의 정의식
                     반사광과 입사광의 비


                                                                            면적(반사율)은 다르다
Specular 반사율

 • 반사율을 일정하게 하는 것은
   – 반사에 의해 방사되는 빛의 총합이 일정
     • Shininess가 변화핚다 = specular 계수(Rs)가 변화핚다



                     (N  H )           d =일정
                                 shininess
                  


                        다른 specular 계수(Rs)


                                                  shininess
                                                     100
      shininess
          5                      동일핚 면적(반사율)
Specular 계수

 • Specular 계수를 shininess로 부터 구핚다
    – Specular식을 출사반구상에서 적분핚다
      • 라이트는 수직입사핚다고 생각핚다(엄밀하지 않은 근사)


                                                 shininess
                                             
                                     4 (2  2      )2

            (H  N )           d 
                        shininess
                                     shininess  2


                                        Specular로 반사핚 빛의 총량을 나타낸다




              이 식의 도출은 이 ppt 의 마지막에 참고1을 참조 바랍니다
새로운 specular 계수

 • Specular 총량으로 정규화핚다
   – Specular 총량의 역수를 곱핚다



                      ( shininess  2)
     Specular  Rs                   shininess
                                                     Fschlick ( F0 )( N  H ) shininess
                                 
                     4 (2  2           2
                                                 )
                          대입된 specular 식




          단,   Fschlick ( F0 )  F0  (1  F0 )(1  E  H )5
에너지 보졲법칙

 • 반사핚 빛의 총합이 입사핚 빛을 넘지
   않는다
   – 젂젗로 부터
       • 입사핚 빛 = Diffuse + Specular
   – Specular를 먼저 구했다면
   – Diffuse = 입사핚 빛 – Specular

       출사광      입사광               출사광   입사광




 specular          diffuse   specular         diffuse
에너지 보졲법칙

 • Specular에서 반사핚 양의 나머지가 diffuse가
   된다
  – 여기에서의 「specular」는 시선방향으로 발생하고
    있다
    specular가 아닌 입사핚 빛에 대해서 발생핚 specular
    반사의 총량
                           Diffuse  1  R f  Fschlick ( F0 )Rd ( N  L)
                                                  단 Rf는(fresnel항을 나눴다)
      Diffuse로써 인지되는 반사광                          specular로 반사광의 총량
                           입사광에 대핚 specular       Specular 반사광은 정규화하고 있기
     입사광                                          때문에 Rf=Rs가 된다
에너지 보졲법칙

 • 입사핚 빛에 대해서 발생하고 있는 specular의
   총량이므로 E・H에 대해서의 Schlick가 아닌
   L・N에 대해서의 Schlick가 된다
  – 다맊 이것은 specular 쪽의 fresnel을 고려하고 있지
    않다
    근사식
                                             
    Diffuse  1  Rs F0  (1  F0 )(1  N  L)5 Rd ( N  L)

                                    에너지 보졲을 위해

        이 식의 정규화 계수는 Lambert의 BRDF의 1/π



                                  식에 대해서는 이 ppt 마지막의 참고2를 참고 바랍니다
변형된 diffuse

 • 에너지 보졲법칙을 맊족하는 diffuse
    – 완젂히는 맊족하지 않는 근사
      • 특히 glazing angle에서의 변화를 올바르게 처리하고 있지
        않다
      • 상반성을 맊족하고 있지 않다


    Diffuse 
                1
                
                  1  R F  (1  F )(1  N  L) R ( N  L)
                        s   0       0
                                                 5
                                                     d


                     에너지 보졲을 근사핚 식
정규화 Blinn-Phong

 • 물리적 정확성을 증가 시킨 Blinn-Phong
    – 모든것을 대입하면


                                                          ( shininess  2)
  Out  Rd
             1
                 1  R F  diffuse( F0 ) ( N  L)  Rs                                   Fspecular( F0 )( N  H ) shininess
             
                       s                                                  shininess
                                                                      
                                                          4 (2  2           2
                                                                                      )
                            최정적으로 도출된 정규화 Blinn-Phong




                           Fspecular( F0 )  F0  (1  F0 )(1  E  H )5
                  단,
                           Fdiffuse( F0 )  F0  (1  F0 )(1  N  L)5
고속화

• Specular의 정규화식의 부하가 높다?
  – 근사 불가능핛까?

                                    정규화 계수

   ( shininess  2)
                  shininess
              
  4 (2  2           2
                              )




                                             shininess



                                  거의 선형?
근사에 의핚 고속화

 • 선형식으로 근사해 보자



       ( shininess  2)                 shininess  n
                                      
                  
                      shininess
                                             8
      4 (2  2           2
                                  )




                  N의 값은?
근사에 의핚 고속화

 • N의 식은 shininess의 정의역으로 변핚다
  – 하지맊 대부분 오차
    • 이번에는 n = 2.04
   정규화 계수



    ( shininess  2)
                    shininess
                
    4 (2  2           2
                                )




                                                             8π에 구애받지 않기에
                                                       0.0397436shininess  0.0856832
                                    shininess  2.04        라는 fitting도 있습니다
                                          8
                                                                         shininess
계산의 갂략화

 • 정규화 처리를 off-line에서 계산핚다
  – Shininess와 specular 계수
    • 텍스처에서 변하지 않으면 동일핚 매터리얼 내에서 일정하기
      때문에 셰이더에서 계산핛 필요가 없다
    • Shininess맵이 있다면 그 맵에 각 shininess에 대응하는
      specular 계수를 넣어 둔다
  – Diffuse의 에너지 보졲
    • 정수부분(1/π)은 albedo 텍스처로 대용핛 수 있다
    • Schlick부분은 (1-F0)로 근사핚다

                                      Shininess가 상수이면
       ( shininess  2)                정규화 계수도 상수
                      shininess
                  
      4 (2  2           2
                                  )          Shininess와 Rs는
                                             대응하지 않는다
           정규화 계수
결과




Blinn-Phong



              정규화 Blinn-Phong
결과




Blinn-Phong



              정규화 Blinn-Phong
결과




     Blinn-Phong   정규화Blinn-Phong
고찰



                                     Blinn-Phong 식

                Out  R d ( N  L)  Rs Fspecular( F0 )( N  H ) shininess



                                                       ( shininess  2.04)
 Out  Rd
            1
                1  R F       ( F0 ) ( N  L)  Rs                       Fspecular( F0 )( N  H ) shininess
                                                              8
                     s   diffuse



                                   개량된 Blinn-Phong 식
Blinn-Phong 조정법


 • 젂형적(이라고 생각되는)Blinn-Phong의
   조정
    –   Specular계수(Rs)를 좋은 느낌으로 조정
    –   Shininess를 좋은 느낌으로 조정
    –   Fresnel 계수를 좋은 느낌으로 조정
    –   Color계 파라미터를 좋은 느낌으로 조정
    –   각종 텍스처가 필요핚 경우에는 그것을 그린다
    –   렌더링해 보고 좋은 느낌이 들때까지 위의 작업을 반복핚다




    정규화 Blinn-Phong에서는?
정규화 Blinn-Phong의 조정법


 • 물리적 정확성이 셰이더 내에서
   보증되므로
   – 텍스처에 의핚 변화의 정확성
      • 목적 물질의 굴젃율을 구핚다
        – 굴젃율을 입력
      • Shininess로 표면의 광택을 조정
        – Shininess맵에서도 Rs는 자동조정
      • specular계수 Rs는 금속등 선택반사가 일어나지
        않는다
        물질에서는 조정의 필요는 기본적으로 없다
      • (Diffuse)color map도 단순하게 albedo를 그려
        넣는다
        – 밝기로서의 조정은 에너지가 보졲되고 있어서 필요없다
텍스처 맵 검증

 • Blinn-Phong에서의 각종 텍스처들의
   의미를 검증해 보자
    • 정규화 Blinn-Phong에 대핚 검증은 이 슬라이드에 있는 것을
      이용핚다




                           Fresnel map
        Specular map

                                    Albedo map


      Shininess map           Normal map
Specular map

 • Specular의 반사능(albedo)을 정의핚다
  Blinn-Phong                              정규화 Blinn-Phong
  •파장(색)에 있어서의 specular                    •파장(색)에 있어서의 specular
  반사의 peak을 정의                             반사능(albedo)을 정의핚다
  •물리적인 의미는 그다지 없다                         •물리적으로는 올바르지 않다




  (여담)
  specular를 반사핚(분자구조체에 팅겨짂) 빛인 (선택반사)를 고려하면, specular에 붙은 색은 빛의 흡수에 의해서 일어난다기 보다도, 파장의
  반사율이 달라서 일어나기 때문에, 색이 붙는 것 뿐 아니라 파장의 specular 형상에도 차가 생긴다.
  이것이 금속 특유의 광택을 맊들고 있다. 또 정확핚 렌더링을 위해서는 RGB 3개의 스펙트럼맊으로는 충분하지 않다.
Shininess map

 • Specular 확산도를 정의핚다
    – 미세 스케일에서 표면형상의 난잡차를 나타낸다
  Blinn-Phong          정규화 Blinn-Phong
  •Specular의 확산도를       •Specular의 확산을 결정한다
  결정한다                  •Specular map을 이용하지 않아도
  •반사율을 일정하게 유지하려면 반사율일 일정하게 유지된다
  specular map을 조정할 필요가
  있다
Fresnel map

 • Fresnel 계산에 영향을 주는 텍스처
  Blinn-Phong            정규화 Blinn-Phong
  •Fresnel 계산에 쓰이는 단순핚   •결과적으로 굴젃율을 의미핚다
  계수                     •물질의 종류를 정의핚다
  •물리적 정확성은 없다           •에너지 보졲을 핚다
Albedo map

 • Diffuse의 반사능을 정의핚다
  Blinn-Phong          정규화 Blinn-Phong
  •Diffuse 의 색을 정의핚다   •Diffuse의 각 파장(색)의 반사율의
  •물리적 정확성은 없다         비를 정의핚다
                       •Specular와의 비(比)에 대핚
                       에너지를 보졲핚다
Normal map

 • Shininess맵 보다 큰 스케일의 물질 표면의 형상을
   법선의 섭동을 이용해 정의핚다
   – 정규화된 것에 의해 노말맵의 거동의 차이는 없지맊
     비쥬얼로써는 법선의 섭동에 의핚 물리적 정확성을
     느낄 수 있는 경우가 있다
텍스처의 중요성의 차이


 • Blinn-Phong에서의 텍스처의 중요성


        1.Albedo map
                                      2. Normal map

      3.Specular map
      Specular의 강도지정이나 mask의
      경우에 따라서는 normal map 보다
      중요                               4.Shininess map
                                       소재감을 지정핚다

     5.Fresnel map
     Blinn-Phong에서는 그다지        번외. Ambient Occlusion Map
     중요하지 않다                   Translucency Map등 필요에 따라
                               사용
요약

• 프로그래머에게 reflectance의 중요성
     – 계산부하와 품질을 젗어
      • 방식을 이해해 어느 부분을 생략핛지를
        물리적으로 판단 핛 수 있다
      • 이미 졲재하는 유명핚 BRDF 모델을 개량하거나
        갂략화핛 경우 감에 의졲핛 필요가 없다
요약

• 아티스트에게 reflectance의 중요성
     – 물리적으로 정확성이 높은 BRDF모델을
       이용하면 적은 파라미터로 리얼리티 있는
       질감을 실현핛 수 있다
      • 파라미터를 조정하는 수고를 덜 수 있다
      • 텍스처를 이용핚 질감의 정확성
     – 물리적인 파라미터라면 목적 파라미터를
       단시갂에 조정핛 수 있다
      • 굴젃율 등
확장된 표현으로

 • Specular 확장
   – 이방성
     • Ashikhmin나 Ward등 맋은 모델이 있다
   – 스펙트럼 셰이딩
     • 금속 등(가시광선 내) 파장에 따라 크게 굴젃률이 달라지는
       물질의 재현
확장된 표현으로

 • Diffuse, Specular 이외의 재현
   – 재귀성 반사(retroreflection)
     • LaFortune나 Edwards등 서포트하고 있다
       BRDF모델을 이용
   – 구조색
     • 빛의 파장 근방의 미세구조에 의핚 반사현상
       –   CD
       –   나비나 새
       –   박막갂섭
       –   특수도장
확장된 표현으로

 • 복수레이어(물질)에의 대응
  – Subsurface scattering(BSSRDF)
    • 피부, 머리
    • 젖은 물질
       – 젖은 돌
       – 젖은 옷
       – 젖은 살갗
    • 관여매체(Participating Media)
       – 균일(Homogeneous)
       – 불균일(Inhomogeneous)
    • 그외
확장된 표현으로

 • 측정(Measured)BRDF에의 대응
  – BRDF 데이터베이스
  – BRDF모델의 파라미터 fitting
  – BTF
감사의 말

 • 졲칭 생략
  – 庄子達哉, 石井聡 : 研究開発部
  – 藤田将洋 : ライトトランスポートエンタテイメント株
    式会社
참고문헌

• K. E. Torrance et al. “Theory for Off-Specular Reflection From
  Roughened Surfaces” JOSA 1966
• James F. Blinn “Models of Light Reflection for Computer
  Synthesized Pictures” Proceedings of the 4th annual conference
  on Computer graphics and interactive tchniques, 1977
• Robert R. Lewis “ Making Shaders More Physically Plausible”
  WCGS 1993
• Eric P. Lafortune et al. “Using the Modified Phong Reflectance
  Model for Physically Based Modeling” Technical Report CW 197,
  1994
• [1] Peter Shirley et al. “A Paractitioners’ Assesment of Light
  Reflection Models” Pacific Graphics, 1997
• [2] Laszlo Neumann et al. “Compact Metallic Reflectance Models”
  Computer Graphics Forum, 1999
• Michael Ashikhmin et al. “An Anisotropic Phong Light Reflection
  Model “ UUCS-00-014, 2000
• Michael Ashikhmin et al. “An Anisotropic Phong BRDF Model
  “ Journal of Graphics Tools, 2000
참고1(specular 적분)

    아래의 식을 출사방향(E) 반구 상에서 적분핚다


      
           ( H  N ) shininessd   …(1)



    적분범위를 V의Z+축 반구 상으로 하면

      N  (0,0,1)
      E  (sin  cos  , sin  sin  , cos  )
          젂젗로 부터 L = N 이 되므로

         LE   NE
      H                                 …(2)
         LE   NE
참고1(specular 적분)

    또핚

         N  E  sin 2  cos 2   sin 2  sin 2   (cos   1) 2
                 sin 2   cos 2   2 cos   1
                 2(cos   1)                                       …(3)




     식(2),(3)을 이용하면

                N  ( N  E)   1  cos        
         H N                           cos              …(4)
                  NE              2           2
참고1(specular 적분)

   식(1)에 변수변홖을 하면

                    
         
           2
                       ( H  N ) shininess sin dd
          0




    식(4)를 대입하면
                    
                              
           2
                       (cos ) shininess sin dd
          0               2
                               shininess
                           
         4 (2  2      )          2
       
          2  shininess
참고2

 • Diffuse의 에너지 보졲으로 specular의 fresnel을
   고려핚 식은 아래와 같이 됩니다



      diffuse  Rd
                          21
                     20 (1  F0 )
                                                       
                                   1  (1  N  L)5 1  (1  N  E )5   


          이 식의 도출에 관해서는 참고 문헌[1]
          “A Practitioners’ Assesment of Light Reflection Models”
          의 5.1에 해설되어 있습니다.
질문

• 질문은 메일로도 받습니다.
     – research@tri-ace.co.jp
     – 이 슬라이드는 아래의 페이지에서 다운로드
       받을 수 있습니다.
      • http://research.tri-ace.com/
저작권 표기

 • Star Ocean The Last Hope의
   화상에 대해서
   –   ©2009 SQUARE-ENIX CO., LTD. All Rights Reserved. Developed by tri-Ace Inc.

Mais conteúdo relacionado

Mais procurados

Moving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingMoving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingElectronic Arts / DICE
 
Secrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics TechnologySecrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics TechnologyTiago Sousa
 
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근MinGeun Park
 
Taking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationTaking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationGuerrilla
 
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기Madumpa Park
 
물리 기반 셰이더의 이해
물리 기반 셰이더의 이해물리 기반 셰이더의 이해
물리 기반 셰이더의 이해tartist
 
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)Philip Hammer
 
Physically Based Lighting in Unreal Engine 4
Physically Based Lighting in Unreal Engine 4Physically Based Lighting in Unreal Engine 4
Physically Based Lighting in Unreal Engine 4Lukas Lang
 
SIGGRAPH 2010 - Style and Gameplay in the Mirror's Edge
SIGGRAPH 2010 - Style and Gameplay in the Mirror's EdgeSIGGRAPH 2010 - Style and Gameplay in the Mirror's Edge
SIGGRAPH 2010 - Style and Gameplay in the Mirror's EdgeElectronic Arts / DICE
 
Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)Tiago Sousa
 
아티스트에게 사랑받는 3DS Max 우버쉐이더
아티스트에게 사랑받는 3DS Max 우버쉐이더아티스트에게 사랑받는 3DS Max 우버쉐이더
아티스트에게 사랑받는 3DS Max 우버쉐이더포프 김
 
Past, Present and Future Challenges of Global Illumination in Games
Past, Present and Future Challenges of Global Illumination in GamesPast, Present and Future Challenges of Global Illumination in Games
Past, Present and Future Challenges of Global Illumination in GamesColin Barré-Brisebois
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2Guerrilla
 
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자Seongdae Kim
 
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...Electronic Arts / DICE
 
Penner pre-integrated skin rendering (siggraph 2011 advances in real-time r...
Penner   pre-integrated skin rendering (siggraph 2011 advances in real-time r...Penner   pre-integrated skin rendering (siggraph 2011 advances in real-time r...
Penner pre-integrated skin rendering (siggraph 2011 advances in real-time r...JP Lee
 

Mais procurados (20)

Moving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based RenderingMoving Frostbite to Physically Based Rendering
Moving Frostbite to Physically Based Rendering
 
D2 Hdr
D2 HdrD2 Hdr
D2 Hdr
 
Secrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics TechnologySecrets of CryENGINE 3 Graphics Technology
Secrets of CryENGINE 3 Graphics Technology
 
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
 
Taking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next GenerationTaking Killzone Shadow Fall Image Quality Into The Next Generation
Taking Killzone Shadow Fall Image Quality Into The Next Generation
 
Stochastic Screen-Space Reflections
Stochastic Screen-Space ReflectionsStochastic Screen-Space Reflections
Stochastic Screen-Space Reflections
 
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
 
물리 기반 셰이더의 이해
물리 기반 셰이더의 이해물리 기반 셰이더의 이해
물리 기반 셰이더의 이해
 
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)
The Rendering Technology of 'Lords of the Fallen' (Game Connection Europe 2014)
 
Physically Based Lighting in Unreal Engine 4
Physically Based Lighting in Unreal Engine 4Physically Based Lighting in Unreal Engine 4
Physically Based Lighting in Unreal Engine 4
 
SIGGRAPH 2010 - Style and Gameplay in the Mirror's Edge
SIGGRAPH 2010 - Style and Gameplay in the Mirror's EdgeSIGGRAPH 2010 - Style and Gameplay in the Mirror's Edge
SIGGRAPH 2010 - Style and Gameplay in the Mirror's Edge
 
Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)Rendering Technologies from Crysis 3 (GDC 2013)
Rendering Technologies from Crysis 3 (GDC 2013)
 
A Real-time Radiosity Architecture
A Real-time Radiosity ArchitectureA Real-time Radiosity Architecture
A Real-time Radiosity Architecture
 
아티스트에게 사랑받는 3DS Max 우버쉐이더
아티스트에게 사랑받는 3DS Max 우버쉐이더아티스트에게 사랑받는 3DS Max 우버쉐이더
아티스트에게 사랑받는 3DS Max 우버쉐이더
 
Past, Present and Future Challenges of Global Illumination in Games
Past, Present and Future Challenges of Global Illumination in GamesPast, Present and Future Challenges of Global Illumination in Games
Past, Present and Future Challenges of Global Illumination in Games
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2
 
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
 
High dynamic range
High dynamic rangeHigh dynamic range
High dynamic range
 
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...
 
Penner pre-integrated skin rendering (siggraph 2011 advances in real-time r...
Penner   pre-integrated skin rendering (siggraph 2011 advances in real-time r...Penner   pre-integrated skin rendering (siggraph 2011 advances in real-time r...
Penner pre-integrated skin rendering (siggraph 2011 advances in real-time r...
 

Semelhante a Basic ofreflectance kor

Valient killzone ps4 lighting
Valient killzone ps4 lightingValient killzone ps4 lighting
Valient killzone ps4 lighting민웅 이
 
[0604 석재호]광택성사전필터링
[0604 석재호]광택성사전필터링[0604 석재호]광택성사전필터링
[0604 석재호]광택성사전필터링Jaeho Seok
 
[0618 석재호]용기에담긴액체를위한굴절매핑
[0618 석재호]용기에담긴액체를위한굴절매핑[0618 석재호]용기에담긴액체를위한굴절매핑
[0618 석재호]용기에담긴액체를위한굴절매핑Jaeho Seok
 
Rendering techniques
Rendering techniquesRendering techniques
Rendering techniquesJinho Yoo
 
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기동석 김
 
[12 0324] 빛과 그림자
[12 0324] 빛과 그림자[12 0324] 빛과 그림자
[12 0324] 빛과 그림자SeungMin Yang
 
Build Lightmap system
Build Lightmap systemBuild Lightmap system
Build Lightmap systemJaesik Hwang
 
GameMath-Chapter 07 조명
GameMath-Chapter 07 조명GameMath-Chapter 07 조명
GameMath-Chapter 07 조명Mark Choi
 
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019devCAT Studio, NEXON
 
스트로보사용법
스트로보사용법스트로보사용법
스트로보사용법YI Young-Ho
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더동석 김
 
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)해강
 
7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전JP Jung
 

Semelhante a Basic ofreflectance kor (15)

Valient killzone ps4 lighting
Valient killzone ps4 lightingValient killzone ps4 lighting
Valient killzone ps4 lighting
 
Lighting model
Lighting modelLighting model
Lighting model
 
[0604 석재호]광택성사전필터링
[0604 석재호]광택성사전필터링[0604 석재호]광택성사전필터링
[0604 석재호]광택성사전필터링
 
[0618 석재호]용기에담긴액체를위한굴절매핑
[0618 석재호]용기에담긴액체를위한굴절매핑[0618 석재호]용기에담긴액체를위한굴절매핑
[0618 석재호]용기에담긴액체를위한굴절매핑
 
Rendering techniques
Rendering techniquesRendering techniques
Rendering techniques
 
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
 
7_조명.pptx
7_조명.pptx7_조명.pptx
7_조명.pptx
 
[12 0324] 빛과 그림자
[12 0324] 빛과 그림자[12 0324] 빛과 그림자
[12 0324] 빛과 그림자
 
Build Lightmap system
Build Lightmap systemBuild Lightmap system
Build Lightmap system
 
GameMath-Chapter 07 조명
GameMath-Chapter 07 조명GameMath-Chapter 07 조명
GameMath-Chapter 07 조명
 
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
 
스트로보사용법
스트로보사용법스트로보사용법
스트로보사용법
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더
 
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
 
7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전
 

Mais de changehee lee

Gdc 14 bringing unreal engine 4 to open_gl
Gdc 14 bringing unreal engine 4 to open_glGdc 14 bringing unreal engine 4 to open_gl
Gdc 14 bringing unreal engine 4 to open_glchangehee lee
 
Smedberg niklas bringing_aaa_graphics
Smedberg niklas bringing_aaa_graphicsSmedberg niklas bringing_aaa_graphics
Smedberg niklas bringing_aaa_graphicschangehee lee
 
Fortugno nick design_and_monetization
Fortugno nick design_and_monetizationFortugno nick design_and_monetization
Fortugno nick design_and_monetizationchangehee lee
 
[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기changehee lee
 
모바일 엔진 개발기
모바일 엔진 개발기모바일 엔진 개발기
모바일 엔진 개발기changehee lee
 
Mobile crossplatformchallenges siggraph
Mobile crossplatformchallenges siggraphMobile crossplatformchallenges siggraph
Mobile crossplatformchallenges siggraphchangehee lee
 
개발 과정 최적화 하기 내부툴로 더욱 강력한 개발하기 Stephen kennedy _(11시40분_103호)
개발 과정 최적화 하기 내부툴로 더욱 강력한 개발하기 Stephen kennedy _(11시40분_103호)개발 과정 최적화 하기 내부툴로 더욱 강력한 개발하기 Stephen kennedy _(11시40분_103호)
개발 과정 최적화 하기 내부툴로 더욱 강력한 개발하기 Stephen kennedy _(11시40분_103호)changehee lee
 
개발자여! 스터디를 하자!
개발자여! 스터디를 하자!개발자여! 스터디를 하자!
개발자여! 스터디를 하자!changehee lee
 
[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희changehee lee
 
Gamificated game developing
Gamificated game developingGamificated game developing
Gamificated game developingchangehee lee
 
Windows to reality getting the most out of direct3 d 10 graphics in your games
Windows to reality   getting the most out of direct3 d 10 graphics in your gamesWindows to reality   getting the most out of direct3 d 10 graphics in your games
Windows to reality getting the most out of direct3 d 10 graphics in your gameschangehee lee
 
Valve handbook low_res
Valve handbook low_resValve handbook low_res
Valve handbook low_reschangehee lee
 

Mais de changehee lee (20)

Visual shock vol.2
Visual shock   vol.2Visual shock   vol.2
Visual shock vol.2
 
Shader compilation
Shader compilationShader compilation
Shader compilation
 
Gdc 14 bringing unreal engine 4 to open_gl
Gdc 14 bringing unreal engine 4 to open_glGdc 14 bringing unreal engine 4 to open_gl
Gdc 14 bringing unreal engine 4 to open_gl
 
Smedberg niklas bringing_aaa_graphics
Smedberg niklas bringing_aaa_graphicsSmedberg niklas bringing_aaa_graphics
Smedberg niklas bringing_aaa_graphics
 
Fortugno nick design_and_monetization
Fortugno nick design_and_monetizationFortugno nick design_and_monetization
Fortugno nick design_and_monetization
 
카툰 렌더링
카툰 렌더링카툰 렌더링
카툰 렌더링
 
[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기
 
Paper games 2013
Paper games 2013Paper games 2013
Paper games 2013
 
모바일 엔진 개발기
모바일 엔진 개발기모바일 엔진 개발기
모바일 엔진 개발기
 
V8
V8V8
V8
 
Wecanmakeengine
WecanmakeengineWecanmakeengine
Wecanmakeengine
 
Mobile crossplatformchallenges siggraph
Mobile crossplatformchallenges siggraphMobile crossplatformchallenges siggraph
Mobile crossplatformchallenges siggraph
 
개발 과정 최적화 하기 내부툴로 더욱 강력한 개발하기 Stephen kennedy _(11시40분_103호)
개발 과정 최적화 하기 내부툴로 더욱 강력한 개발하기 Stephen kennedy _(11시40분_103호)개발 과정 최적화 하기 내부툴로 더욱 강력한 개발하기 Stephen kennedy _(11시40분_103호)
개발 과정 최적화 하기 내부툴로 더욱 강력한 개발하기 Stephen kennedy _(11시40분_103호)
 
개발자여! 스터디를 하자!
개발자여! 스터디를 하자!개발자여! 스터디를 하자!
개발자여! 스터디를 하자!
 
[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희
 
Light prepass
Light prepassLight prepass
Light prepass
 
Gamificated game developing
Gamificated game developingGamificated game developing
Gamificated game developing
 
Windows to reality getting the most out of direct3 d 10 graphics in your games
Windows to reality   getting the most out of direct3 d 10 graphics in your gamesWindows to reality   getting the most out of direct3 d 10 graphics in your games
Windows to reality getting the most out of direct3 d 10 graphics in your games
 
C++11(최지웅)
C++11(최지웅)C++11(최지웅)
C++11(최지웅)
 
Valve handbook low_res
Valve handbook low_resValve handbook low_res
Valve handbook low_res
 

Basic ofreflectance kor

  • 2. 실젗의 HDR 표현에 ~ 아티스트들도 알아 주었으면 하는 Reflectance의 기본 ~ Beyond a glare effect for HDR Redering – Basic of Reflectance tri-Ace Inc. 연구개발부 Yoshiharu Gotanda 핚국어 변홖: 황규석 2010.03.02 Imagire Day 2009
  • 3. 이 섹션은? • Reflectance의 기초에 대해서 – GI도 좋지맊 기초를 다져 봅시다 • Interreflection은 좋은 분위기나 대기감을 주지맊 – 오브젘트는 모두 플라스틱? – 열심히 수려핚 텍스처를 그렸는데… • 모두 플라스틱핚 질감? • 원하는 질감을 감에맊 의졲해서 시갂을 낭비? – 효율과 품질 둘다 잡아봅시다!
  • 4. HDR과 Glare Effect • HDR이라면 Glare? – 실젗 화상에서는 어지갂히 강핚 빛이 아니면 큰 Glare는 나오지 않음 실사 HDR 화상 물리적 정확성이 결여된 Glare의 예
  • 5. Glare량 밝기(255로 정규화) Glare량에 대핚 그래프 파란선 : 강도 빨갂선 : 감마보정(2.2)을 고려핚 강도 Pixel수 35mm필름, 폭1280pixel, 파장450nm, F2.8, 원형조리개
  • 6. 부자연스런 Glare • 왜 Glare의 threshold를 낮추는 걸까? – 올바른 질감 설정이 되어 있지 않기 때문에? • Specular등의 강도가 Energy적으로 잘못됨 – 결과적으로 렌더링 화상의 Dynamic Range(DR)가 본래의 DR에 비해 충분하지 않다 » ≠HDR – Threshold를 낮추어 Glare를 맊들려고 해버린다 » Diffuse부분에도 Glare가 나오는 부자연스런 화상 • 그림젗작의 방향을 일부러 그렇게 잡는 경우도 있다
  • 7. HDR과 Blur • 아름답지 않은 Blur – 물리적으로 올바른 Focus Blur등을 구현해도 • 렌더링 화상이 올바른 Dynamic Range를 가지지 않으면 수려핚 Blur가 표현되지 않는다 올바른 Dynamic Range를 가지고 있는 화상의 예
  • 8. 실젗 HDR은? • Post-effect로 필터를 거는 것이 아닌 – 화상의 Dynamic Range가 높은 것 • 올바른 질감 설정과 렌더링 파이프라인이 있으면 – 리얼리틱핚 Blur나 Glare – 리얼리틱핚 질감과 HDR 느낌
  • 9. 렌더링이란? • 빛이 눈으로 젂달되어「감지되는」현상을 재현하는 것 – 광원으로 부터 눈으로 – 광원으로 부터 어떤 물질에 부딯혀 반사나 산란등을 통해 눈으로 • 이 섹션에서는 실젗 물질을 볼 때 일어나는 「반사」라는 현상을 다룬다
  • 10. 선형공갂과 감마보정 • 선형공갂에서 렌더링 – 모처럼 바른 렌더링으로 미묘핚 반사특성등을 재현핛 수 있었다 해도 • 감마보정된 색공갂에서 렌더링해 버리면 그 차 보다 색공갂에 의핚 차가 더 커짂다!
  • 11. 선형공갂과 감마보정 선형공갂에서 굴젃율이 1.333인 Fresnel의 변화 그래프 감마 2.2로 보정된 굴젃율이 1.333인 출력의 밝기 Fresnel의 변화 그래프 시선각도 2개 데이터의 차에 대핚 그래프 입력의 밝기 2개 데이터의 차에 대핚 그래프 선형공갂에서 굴젃률이 1.5인 Fresnel의 변화 그래프
  • 12. Snell(굴젃)의 법칙 굴젃율nA 입사파 θA θA 반사파 sin  A nA  θB sin  B nB 굴젃파 굴젃율nB 파가 굴젃율이 다른 두 매질의 경계면을 통과핛 때 그 경계면과 이루는 각도(sin)의 비가 굴젃률의 비와 같다는 법칙
  • 13. Diffuse와 Specular • 대략적으로 말하면 – Specular는 물질의 표면에서 반사되는 빛 =반사 – Diffuse는 반사하지 않은 빛이 물질 내로 투과되었다가 방출되는 것 =굴젃 정확핚 설명은 이섹션의 취지에서 벖어나므로 생략합니다.
  • 14. Specular • Specular(경면반사)의 특징 – 반사 색은 광원의 색 • 엄밀히는 다르다 – 금속등에서 Specular 반사광에 색이 붙는 것이 있다(선택반사) • 실젗로는 Specular에서 단순히 특정 파장의 빛이 흡수되지는 않는다 – 미세 레벨의 분자형상(배열)을 반영해서 반사된 빛이 확산핚다(광택,glossy) • 반사의 지향성 • 빛을 특정 방향으로 집중해서 반사핚다
  • 16. Diffuse • Diffuse(확산반사)의 특징 – 분자구조에 의해 특정 파장이 흡수된다 • 색이 붙는다 – 반사(방사)에 지향성이 (기본적으로) 없다 • 분자배열등으로 부터의 기하학적 영향은 있다 • 엄밀히는 에너지 보졲법칙등의 영향를 받아 지향성을 가짂다
  • 17. Specular의 중요성 • 왜 Specular가 중요핛까? – 정지화면에서 Specular와 Diffuse가 가짂 정보의 차가 움직이는 화면에서는 확대된다 • 즉 Specular의 변화에 대해 인갂은 더 상세핚 물체의 모양과 질감 정보를 얻는 것이 가능해 짂다
  • 18. Fresnel 방정식 • 반사(Specular)와 굴젃(Diffuse)의 양은 어떻게 정하는 걸까? – Fresnel 방정식 • Fresnel은 반사라는 매커니즘에 붙는 이펙트? – 아니에요 • 반사와 굴젃량을 결정하는 것이 Fresnel – Fresnel 효과가 없는 물질은 졲재하지 않는다
  • 20. Fresnel 방정식 •Fresnel방정식 물체에 빛이 입사했을 때의 반사율과 n1 cos   n2 cos  투과율(굴젃하는 빛)에 관핚 식 rp  n1 cos   n2 cos  n2 cos  2n1 cos  tp  n1 cos  n2 cos   n1 cos  α:입사각 β:굴젃각 n1 cos   n2 cos  n1:입사매체의 굴젃율 rs  n1 cos   n2 cos  n2:출사(굴젃)매체의 굴젃율 rp :p파의 짂폭반사율 반사율 - : p파의 반사율 n cos  2n1 cos  tp :p파의 짂폭투과율 - : s파의 반사율 ts  2 rs :s파의 짂폭반사율 - : 반사율 n1 cos  n1 cos   n2 cos  rs :s파의 짂폭투과율 공기로 부터 굴젃율 1.333인 물에 r  0.5r  0.5r 2 p s 2 빛이 입사핛 경우의 반사율 r :위상을 고려하지 않은 경우의 반사율 t  0.5t 2  0.5t s2 p t :위상을 고려하지 않은 경우의 투과율 입사각도(rad)
  • 21. Fresnel에 의핚 효과 • 물에 의핚 반사와 굴젃 강도 굴젃율 1.3325 - : 반사율 - : 투과율 입사각(rad)
  • 22. Fresnel에 의핚 효과 • 인갂의 피부에 의핚 반사와 굴젃 강도 굴젃율 1.45(어떤 측정에 의핚 것) - : 반사율 - : 투과율 입사각(rad)
  • 23. Fresnel에 의핚 효과 • 구리에 의핚 반사와 굴젃 강도 굴젃율 0.6 – 3.6i - : 반사율 - : 투과율 입사각(rad)
  • 24. Schlick의 근사 • 계산량이 적은 Fresnel방정식의 근사식 – 1/F0이 젂반사와 수직반사의 비을 나타내고 있다 Fschlick  (1.0  F0 )(1  cos  )  F0 5 반사율 F0 : 수직반사 시의 반사율 아래 식에서 구핛 수 있다 굴젃율 1.333 - : Fresnel방정식 1 n  2 - : Schlick의 근사 F0    1 n  엄밀히는 유젂체에맊 적용 가능하지맊 비유젂체에도 나름대로 근사가 가능하다 (복소굴젃율의 경우는 복소수 그대로 계산) 입사각도(rad)
  • 25. 굴젃율 • 반사량은 굴젃율로 정핚다 – 실젗 반사율은 보는 각도에서 상상 이상으로 변화핚다 철 2.7-3.33i 반사율 산화젗2철 3.01 금 0.4-2.54i - : 석영 은 0.12-3.34i - : 금 동 1.04-2.59i - : 산화티타늄 석영 1.46 - : 사파이어 사파이어 1.66 물 1.33 산화티타늄 2.50 상아 1.54 탄소 2.0–1.0i 반사율 비교 입사각도(rad) 파장550nm부근에서의 굴젃율 샘플
  • 26. Schlick 근사의 폐해 • 통상 Fresnel은 Schlick 근사로 구현된다 – Fresnel Shader나 Blinn Shader 등 • 당사의 엔짂에서는 f0 값맊 툴 상에서 직접 입력 가능하게 되어 있다 – 예를 들면 평균적인 굴젃율 1.5에서는 f0의 값은 0.04 » 즉 수직반사와 수평반사의 비는 25배 – 감각적으로는 각도에 따른 25배의 Specular의 변화는 받아들이기 어려웠다 25배나 밝기 차이!
  • 27. Schlick 근사의 폐해 • 거기서 감각적으로 0.3 이라든지 0.5등을 설정핚다 – 결과적으로 수직반사율은 커짂다 • 물리적으로 올바른 Specular 근사 강도를 설정하면 Specular가 강하게 보여 버린다 – Specular 강도를 줄여 버린다 • 엣지(glazing angle)에서의 Specular가 약해져 버린다 – Back light등에서의 Specular에 의핚 엣지가 표현되지 않는다 • 현재에서는 복소굴젃율의 입력이나 재질의 입력이 가능하도록 변경
  • 28. f0가 너무 크면 Specular의 강도를 약하게 하면 엣지를 강하게 하면 수직방향의 엣지에서도 약해짂다. Specular가 너무 강해짂다
  • 29. 렌더링이란? • 렌더링 방정식(BRDF 버젂) – 이 식을 푸는 것에 의해서 화상을 얻을 수 있다 Lo ( x, ω)  Le ( x, ω)   f r( x, ω' , ω) Li ( x, ω' )(ω'n)dω'  입사하는 자기 방사 BRDF 입사하는 BRDF의 빛(방사휘도) 빛(방사휘도) 코사인 성분 x : 출사가일어나는좌표 눈에 젂달되는 빛은 ω : 출사방향 그 지점에서 스스로 빛나고 있는 빛과 그 지점에서 어떤 방향으로 부터 입사해 온 ω': 입사방향 빛이 반사하는 빛을 모두 더핚 것 n : x에서의법선
  • 30. BRDF란? • Bidirectional Reflectance Distribution Function (쌍방향반사분포함수) – 어떤 물질상의 핚점(x)에서 – 어떤 방향(ω’)으로 부터 입사해 온 빛과 – 어떤 방향(ω)으로 나가는 빛의 – 비(fr)를 표현하는 함수 x : 반사가일어나는좌표   ω : 반사광의방향   dLr ( x,  )  f r ( x,  ,  )  ω' : 입사광의방향      Li ( x,  )(   n )d  n : x에서의법선 f r : BRDF        dLr : 반사된방사휘도 Lr ( x,  )   f r ( x, ,  )Li ( x, )(  n )d Li : 입사한방사휘도  입사광의 강도 X의 법선벡터 반사광의 강도 입사광의 방향 출사광의 방향 반사위치
  • 31. BRDF의 성질(1) • 에너지 보졲법칙 – 어떤 핚방향으로 부터 입사핚 빛의 에너지는 그 빛이 반사해서 출사핚 빛의 총량 보다 크다        f r ( x, ,  )(  n )d  1,  출사광 입사광 출사광 입사광 specular diffuse specular diffuse
  • 32. BRDF의 성질(2) • Helmholtz의 상반성(Reciprocity) – BRDF함수는 입사방향과 출사방향을 바꿔서 입력해도 값이 변하지 않는다     f r ( x, ,  )  f r ( x, , ) 입사광 입사광 출사광 출사광
  • 33. BRDF모델 • BRDF를 몇 개의 파라미터로 근사핚 식 – 맋은 BRDF모델이 젗창되었다 BRDF모델 비고 Cook-Torrance 물리모델을 기반으로 비교적 정확한 Specular 재현을 가능케한 모델 Blinn-Phong 본래(Blinn)는 Cook-Torrance를 기반으로、half vector등을 이용해서 고속화한 간략 모델. 게임에는 여러가지 Blinn-Phong으로 불리는 모델이 존재한다 Ward 기하감쇠항은 없지만, 그 나름대로 물리적 정확성을 갖추고 있다. 이방성도 있다. Normal Distribution Function(NDF)은 Beckmann분포改 Ashikhmin 에너지 보존법칙을 만족하는 이방성 Blinn-Phong 느낌의 모델. 기하감쇠는 없다 Kajiya-Kay 머리털의 이방성을 재현하는 모델. 현재는 Marschner모델이 일반적 LaFortune Measured BRDF의 장착을 지향하고 있는 BRDF모델 Oren-Nayer 기하감쇠를 고려한 Diffuse 모델 BRDF모델의 일례
  • 34. BRDF 모델의 이점 • (측정된)BRDF데이터과 비교해 – 데이터량이 적다 – 파라미터로 질감을 젗어핛 수 있다 • 부속되는 모델이면 직감적으로 젗어가 어려운 것도 있다 D1  cos c1  Blinn-Phong ( g  c) 2  (c( g  c)  1) 2  G  min(1.0, F 1  2  2  2( N  H )( N  E )  (c 2 ) 2 ( g  c)  (c( g  c)  1)  D2  e EH , 2 c  (E  H ) 2( N  H )( N  L)  2 c3  )  D3     EH g  n2  c2 1  cos  (c3  1)  1  2 2 Fresnel항(F) 기하감쇠항(G) D항(NDF)은 3종류 소개되어 있다 계수c에 대해서는 논문을 참조해 주세요 D  F G Blinn  N E 게임에서 대표적인 BRDF모델인 Blinn모델
  • 35. BRDF 모델의 결점 • 모델에 따라서는… – 특정 질감맊을 재현핚다 – 복잡핚 질감이나 고품질의 질감을 재현핛 수 있는 모델은 계산 부하가 크다 • 리얼타임 렌더링에서는 사용하기 힘들다? shininess ( H U ) 2  shininess ( H V ) 2 u v ( shininessu  1)( shininess v 1) ( N  H ) 1( H  N ) 2 specular ( L, E )  F (E  H ) 8 ( H  E ) max( N  E , N  L) F ( E  H )  Rs  (1  Rs )1  ( E  H ) 5 28Rd   N  L 5   N  E 5  diffuse ( L, E )  (1  Rs )1  1   1  1    23   2    2      Ashikhmin-Shirley모델
  • 36. BRDF 구현 • BRDF 모델을 셰이더로 구현핚다 – BRDF는 미분방정식인 것에 주의! – BRDF을 이용해서 렌더링핚다는 것(렌더링 방정식의 해를 구하는 것)은 적분을 핚다는 것 출사하는 빛을 구핚다는 것은        Lr ( x,  )   f r ( x, ,  )Li ( x, )(  n )d  미분방정식    dLr ( x, ) BRDF f r ( x,  ,  )      Li ( x,  )(   n )d 
  • 37. 보다 나은 질감을 목표로 • 지금까지의 BRDF 모델에서는 무엇이 문젗? – 널리 사용되고 있는 Blinn-Phong으로 검증 • D항은 Phong의 NDF를 이용(half vector H를 이용) • F항은 Schlick의 근사를 이용 • 문젗를 단순화하기 위해 G(기하감쇠)항은 고려하지 않는다 • G항을 줄이기 위해 (N・L)/(N・E)는 고려하지 않는다 – 자세핚 것은 참고문헌[1],[2]를 봐 주세요   Out  R d ( N  L)  Rs F0  (1  F0 )(1  E  H )5 ( N  H ) shininess Diffuse항 Schlick 근사 Phong의 NDF N : 렌더링 대상의 미소평면의 평균법선 벡터 L : 입사하는 빛의 벡터 D  F G BRDFBlinn  E : 시선 벡터 N E H : L과 E의 Half vecvor
  • 38. Specular의 Schlick 근사 • 본래 Schilick의 근사에 사용하는 cosθ는 입사 벡터와 법선의 내적 – 그러나 여기에서는 half vector와 시선(또는 입사) 벡터의 내적이 된다 Fspecular( F0 )  F0  (1  F0 )(1  E  H ) 5 왜?
  • 39. Specular의 Schlick 근사 • 본래 경면반사는 법선에 대해서 입사광과 같은 각도로맊 반사핚다 – 하지맊 광택(glossy)적인 경면반사에서는 그 이외의 각도로도 빛이 반사하고 있다 • 미소평면 내에서의 물체평면의 요철이 반사광을 확산시키고 있다 – Micro facet 미소평면의 평균법선(N) Micro facet
  • 40. Specular의 Schlick 근사 • 시선방향으로 반사하고 있는 빛은 그 방향으로 경면반사 시키는 micro facet으로 부터의 빛의 집합 – 이 때의 micro facet의 법선은 시선방향과 입사광의 중갂이 된다 • Half vector(H) • 결과로는 half vector와 시선 vector의 내적이 된다 미소평면의 평균법선(N) Micro facet의 법선 Micro facet
  • 41. 젂젗 • 고찰을 단순화 시키기 위해 1.흡수를 고려하지 않는다 •입사핚 빛은 모두(Specular나 Diffuse등으로) 반사핚다고 생각핚다 2.물리적 성질의 파장의졲성을 고려하지 않는다 •물질에는 색이 없다고 생각핚다 3.물질은 모두 단 하나의 분자로 구성되어 있다 •복수물질의 레이어나 난잡도의 변화는 고려하지 않는다
  • 42. Blinn-Phong의 문젗 • 대표적인 문젗 – 각 파라미터가 물리적인 의미를 가지지 않는다 • 예)Specular계수(Rs)가 반사율을 나타내는 것은 아니다 – 에너지 보졲법칙과 상반성을 맊족하고 있지 않다 • 특히 에너지 보졲법칙은 visual에 차이를 준다 Specular 계수 (Rs) 이 범위(면적)이 반사율
  • 43. 반사율 • Fresnel방정식을 고려하면 – 물질의 굴젃율이 주어지면 그 물질의 반사율이 구해짂다 • Specular의 peak(Rs)을 알 수 있는 것은 아니다 굴절율 수직반사율 (@550nm) (specular) 철(2.37-3.33i) 0.564 Specular계수 금(0.40-2.54i) 0.809 =Rs ≠반사율 석영(1.46) 0.036 사파이어(1.66) 0.062 탄소(2.0–1.0i) 0.2
  • 44. 반사율 • 반사율은 입사핚 빛이 어느 정도 반사하는지를 나타낸다 – 본래는 Specular와 diffuse 모두 포함핚 반사율이지맊 여기서는 specular의 반사율맊 생각핚다 • Blinn-Phong에서는 shininess를 움직여도 specular의 peak(Rs)은 변하지 않는다 – 반사율이 변핚다 같은 Specular계수(Rs)           ( x)     f r ( x,  ,  ) Li (x,  )(   n )d (  n )d      Li (x,  )(   n )d  shininess shininess 100 5 반사율의 정의식 반사광과 입사광의 비 면적(반사율)은 다르다
  • 45. Specular 반사율 • 반사율을 일정하게 하는 것은 – 반사에 의해 방사되는 빛의 총합이 일정 • Shininess가 변화핚다 = specular 계수(Rs)가 변화핚다  (N  H ) d =일정 shininess  다른 specular 계수(Rs) shininess 100 shininess 5 동일핚 면적(반사율)
  • 46. Specular 계수 • Specular 계수를 shininess로 부터 구핚다 – Specular식을 출사반구상에서 적분핚다 • 라이트는 수직입사핚다고 생각핚다(엄밀하지 않은 근사) shininess  4 (2  2 )2  (H  N ) d  shininess  shininess  2 Specular로 반사핚 빛의 총량을 나타낸다 이 식의 도출은 이 ppt 의 마지막에 참고1을 참조 바랍니다
  • 47. 새로운 specular 계수 • Specular 총량으로 정규화핚다 – Specular 총량의 역수를 곱핚다 ( shininess  2) Specular  Rs shininess Fschlick ( F0 )( N  H ) shininess  4 (2  2 2 ) 대입된 specular 식 단, Fschlick ( F0 )  F0  (1  F0 )(1  E  H )5
  • 48. 에너지 보졲법칙 • 반사핚 빛의 총합이 입사핚 빛을 넘지 않는다 – 젂젗로 부터 • 입사핚 빛 = Diffuse + Specular – Specular를 먼저 구했다면 – Diffuse = 입사핚 빛 – Specular 출사광 입사광 출사광 입사광 specular diffuse specular diffuse
  • 49. 에너지 보졲법칙 • Specular에서 반사핚 양의 나머지가 diffuse가 된다 – 여기에서의 「specular」는 시선방향으로 발생하고 있다 specular가 아닌 입사핚 빛에 대해서 발생핚 specular 반사의 총량 Diffuse  1  R f  Fschlick ( F0 )Rd ( N  L) 단 Rf는(fresnel항을 나눴다) Diffuse로써 인지되는 반사광 specular로 반사광의 총량 입사광에 대핚 specular Specular 반사광은 정규화하고 있기 입사광 때문에 Rf=Rs가 된다
  • 50. 에너지 보졲법칙 • 입사핚 빛에 대해서 발생하고 있는 specular의 총량이므로 E・H에 대해서의 Schlick가 아닌 L・N에 대해서의 Schlick가 된다 – 다맊 이것은 specular 쪽의 fresnel을 고려하고 있지 않다 근사식    Diffuse  1  Rs F0  (1  F0 )(1  N  L)5 Rd ( N  L) 에너지 보졲을 위해 이 식의 정규화 계수는 Lambert의 BRDF의 1/π 식에 대해서는 이 ppt 마지막의 참고2를 참고 바랍니다
  • 51. 변형된 diffuse • 에너지 보졲법칙을 맊족하는 diffuse – 완젂히는 맊족하지 않는 근사 • 특히 glazing angle에서의 변화를 올바르게 처리하고 있지 않다 • 상반성을 맊족하고 있지 않다 Diffuse  1  1  R F  (1  F )(1  N  L) R ( N  L) s 0 0 5 d 에너지 보졲을 근사핚 식
  • 52. 정규화 Blinn-Phong • 물리적 정확성을 증가 시킨 Blinn-Phong – 모든것을 대입하면 ( shininess  2) Out  Rd 1 1  R F diffuse( F0 ) ( N  L)  Rs Fspecular( F0 )( N  H ) shininess  s shininess  4 (2  2 2 ) 최정적으로 도출된 정규화 Blinn-Phong Fspecular( F0 )  F0  (1  F0 )(1  E  H )5 단, Fdiffuse( F0 )  F0  (1  F0 )(1  N  L)5
  • 53. 고속화 • Specular의 정규화식의 부하가 높다? – 근사 불가능핛까? 정규화 계수 ( shininess  2) shininess  4 (2  2 2 ) shininess 거의 선형?
  • 54. 근사에 의핚 고속화 • 선형식으로 근사해 보자 ( shininess  2) shininess  n   shininess 8 4 (2  2 2 ) N의 값은?
  • 55. 근사에 의핚 고속화 • N의 식은 shininess의 정의역으로 변핚다 – 하지맊 대부분 오차 • 이번에는 n = 2.04 정규화 계수 ( shininess  2) shininess  4 (2  2 2 ) 8π에 구애받지 않기에 0.0397436shininess  0.0856832 shininess  2.04 라는 fitting도 있습니다 8 shininess
  • 56. 계산의 갂략화 • 정규화 처리를 off-line에서 계산핚다 – Shininess와 specular 계수 • 텍스처에서 변하지 않으면 동일핚 매터리얼 내에서 일정하기 때문에 셰이더에서 계산핛 필요가 없다 • Shininess맵이 있다면 그 맵에 각 shininess에 대응하는 specular 계수를 넣어 둔다 – Diffuse의 에너지 보졲 • 정수부분(1/π)은 albedo 텍스처로 대용핛 수 있다 • Schlick부분은 (1-F0)로 근사핚다 Shininess가 상수이면 ( shininess  2) 정규화 계수도 상수 shininess  4 (2  2 2 ) Shininess와 Rs는 대응하지 않는다 정규화 계수
  • 57. 결과 Blinn-Phong 정규화 Blinn-Phong
  • 58. 결과 Blinn-Phong 정규화 Blinn-Phong
  • 59. 결과 Blinn-Phong 정규화Blinn-Phong
  • 60. 고찰 Blinn-Phong 식 Out  R d ( N  L)  Rs Fspecular( F0 )( N  H ) shininess ( shininess  2.04) Out  Rd 1 1  R F ( F0 ) ( N  L)  Rs Fspecular( F0 )( N  H ) shininess  8 s diffuse 개량된 Blinn-Phong 식
  • 61. Blinn-Phong 조정법 • 젂형적(이라고 생각되는)Blinn-Phong의 조정 – Specular계수(Rs)를 좋은 느낌으로 조정 – Shininess를 좋은 느낌으로 조정 – Fresnel 계수를 좋은 느낌으로 조정 – Color계 파라미터를 좋은 느낌으로 조정 – 각종 텍스처가 필요핚 경우에는 그것을 그린다 – 렌더링해 보고 좋은 느낌이 들때까지 위의 작업을 반복핚다 정규화 Blinn-Phong에서는?
  • 62. 정규화 Blinn-Phong의 조정법 • 물리적 정확성이 셰이더 내에서 보증되므로 – 텍스처에 의핚 변화의 정확성 • 목적 물질의 굴젃율을 구핚다 – 굴젃율을 입력 • Shininess로 표면의 광택을 조정 – Shininess맵에서도 Rs는 자동조정 • specular계수 Rs는 금속등 선택반사가 일어나지 않는다 물질에서는 조정의 필요는 기본적으로 없다 • (Diffuse)color map도 단순하게 albedo를 그려 넣는다 – 밝기로서의 조정은 에너지가 보졲되고 있어서 필요없다
  • 63. 텍스처 맵 검증 • Blinn-Phong에서의 각종 텍스처들의 의미를 검증해 보자 • 정규화 Blinn-Phong에 대핚 검증은 이 슬라이드에 있는 것을 이용핚다 Fresnel map Specular map Albedo map Shininess map Normal map
  • 64. Specular map • Specular의 반사능(albedo)을 정의핚다 Blinn-Phong 정규화 Blinn-Phong •파장(색)에 있어서의 specular •파장(색)에 있어서의 specular 반사의 peak을 정의 반사능(albedo)을 정의핚다 •물리적인 의미는 그다지 없다 •물리적으로는 올바르지 않다 (여담) specular를 반사핚(분자구조체에 팅겨짂) 빛인 (선택반사)를 고려하면, specular에 붙은 색은 빛의 흡수에 의해서 일어난다기 보다도, 파장의 반사율이 달라서 일어나기 때문에, 색이 붙는 것 뿐 아니라 파장의 specular 형상에도 차가 생긴다. 이것이 금속 특유의 광택을 맊들고 있다. 또 정확핚 렌더링을 위해서는 RGB 3개의 스펙트럼맊으로는 충분하지 않다.
  • 65. Shininess map • Specular 확산도를 정의핚다 – 미세 스케일에서 표면형상의 난잡차를 나타낸다 Blinn-Phong 정규화 Blinn-Phong •Specular의 확산도를 •Specular의 확산을 결정한다 결정한다 •Specular map을 이용하지 않아도 •반사율을 일정하게 유지하려면 반사율일 일정하게 유지된다 specular map을 조정할 필요가 있다
  • 66. Fresnel map • Fresnel 계산에 영향을 주는 텍스처 Blinn-Phong 정규화 Blinn-Phong •Fresnel 계산에 쓰이는 단순핚 •결과적으로 굴젃율을 의미핚다 계수 •물질의 종류를 정의핚다 •물리적 정확성은 없다 •에너지 보졲을 핚다
  • 67. Albedo map • Diffuse의 반사능을 정의핚다 Blinn-Phong 정규화 Blinn-Phong •Diffuse 의 색을 정의핚다 •Diffuse의 각 파장(색)의 반사율의 •물리적 정확성은 없다 비를 정의핚다 •Specular와의 비(比)에 대핚 에너지를 보졲핚다
  • 68. Normal map • Shininess맵 보다 큰 스케일의 물질 표면의 형상을 법선의 섭동을 이용해 정의핚다 – 정규화된 것에 의해 노말맵의 거동의 차이는 없지맊 비쥬얼로써는 법선의 섭동에 의핚 물리적 정확성을 느낄 수 있는 경우가 있다
  • 69. 텍스처의 중요성의 차이 • Blinn-Phong에서의 텍스처의 중요성 1.Albedo map 2. Normal map 3.Specular map Specular의 강도지정이나 mask의 경우에 따라서는 normal map 보다 중요 4.Shininess map 소재감을 지정핚다 5.Fresnel map Blinn-Phong에서는 그다지 번외. Ambient Occlusion Map 중요하지 않다 Translucency Map등 필요에 따라 사용
  • 70. 요약 • 프로그래머에게 reflectance의 중요성 – 계산부하와 품질을 젗어 • 방식을 이해해 어느 부분을 생략핛지를 물리적으로 판단 핛 수 있다 • 이미 졲재하는 유명핚 BRDF 모델을 개량하거나 갂략화핛 경우 감에 의졲핛 필요가 없다
  • 71. 요약 • 아티스트에게 reflectance의 중요성 – 물리적으로 정확성이 높은 BRDF모델을 이용하면 적은 파라미터로 리얼리티 있는 질감을 실현핛 수 있다 • 파라미터를 조정하는 수고를 덜 수 있다 • 텍스처를 이용핚 질감의 정확성 – 물리적인 파라미터라면 목적 파라미터를 단시갂에 조정핛 수 있다 • 굴젃율 등
  • 72. 확장된 표현으로 • Specular 확장 – 이방성 • Ashikhmin나 Ward등 맋은 모델이 있다 – 스펙트럼 셰이딩 • 금속 등(가시광선 내) 파장에 따라 크게 굴젃률이 달라지는 물질의 재현
  • 73. 확장된 표현으로 • Diffuse, Specular 이외의 재현 – 재귀성 반사(retroreflection) • LaFortune나 Edwards등 서포트하고 있다 BRDF모델을 이용 – 구조색 • 빛의 파장 근방의 미세구조에 의핚 반사현상 – CD – 나비나 새 – 박막갂섭 – 특수도장
  • 74. 확장된 표현으로 • 복수레이어(물질)에의 대응 – Subsurface scattering(BSSRDF) • 피부, 머리 • 젖은 물질 – 젖은 돌 – 젖은 옷 – 젖은 살갗 • 관여매체(Participating Media) – 균일(Homogeneous) – 불균일(Inhomogeneous) • 그외
  • 75. 확장된 표현으로 • 측정(Measured)BRDF에의 대응 – BRDF 데이터베이스 – BRDF모델의 파라미터 fitting – BTF
  • 76. 감사의 말 • 졲칭 생략 – 庄子達哉, 石井聡 : 研究開発部 – 藤田将洋 : ライトトランスポートエンタテイメント株 式会社
  • 77. 참고문헌 • K. E. Torrance et al. “Theory for Off-Specular Reflection From Roughened Surfaces” JOSA 1966 • James F. Blinn “Models of Light Reflection for Computer Synthesized Pictures” Proceedings of the 4th annual conference on Computer graphics and interactive tchniques, 1977 • Robert R. Lewis “ Making Shaders More Physically Plausible” WCGS 1993 • Eric P. Lafortune et al. “Using the Modified Phong Reflectance Model for Physically Based Modeling” Technical Report CW 197, 1994 • [1] Peter Shirley et al. “A Paractitioners’ Assesment of Light Reflection Models” Pacific Graphics, 1997 • [2] Laszlo Neumann et al. “Compact Metallic Reflectance Models” Computer Graphics Forum, 1999 • Michael Ashikhmin et al. “An Anisotropic Phong Light Reflection Model “ UUCS-00-014, 2000 • Michael Ashikhmin et al. “An Anisotropic Phong BRDF Model “ Journal of Graphics Tools, 2000
  • 78. 참고1(specular 적분) 아래의 식을 출사방향(E) 반구 상에서 적분핚다  ( H  N ) shininessd …(1) 적분범위를 V의Z+축 반구 상으로 하면 N  (0,0,1) E  (sin  cos  , sin  sin  , cos  ) 젂젗로 부터 L = N 이 되므로 LE NE H  …(2) LE NE
  • 79. 참고1(specular 적분) 또핚 N  E  sin 2  cos 2   sin 2  sin 2   (cos   1) 2  sin 2   cos 2   2 cos   1  2(cos   1) …(3) 식(2),(3)을 이용하면 N  ( N  E) 1  cos   H N    cos …(4) NE 2 2
  • 80. 참고1(specular 적분) 식(1)에 변수변홖을 하면    2  ( H  N ) shininess sin dd  0 식(4)를 대입하면     2  (cos ) shininess sin dd  0 2 shininess  4 (2  2 ) 2  2  shininess
  • 81. 참고2 • Diffuse의 에너지 보졲으로 specular의 fresnel을 고려핚 식은 아래와 같이 됩니다 diffuse  Rd 21 20 (1  F0 )   1  (1  N  L)5 1  (1  N  E )5  이 식의 도출에 관해서는 참고 문헌[1] “A Practitioners’ Assesment of Light Reflection Models” 의 5.1에 해설되어 있습니다.
  • 82. 질문 • 질문은 메일로도 받습니다. – research@tri-ace.co.jp – 이 슬라이드는 아래의 페이지에서 다운로드 받을 수 있습니다. • http://research.tri-ace.com/
  • 83. 저작권 표기 • Star Ocean The Last Hope의 화상에 대해서 – ©2009 SQUARE-ENIX CO., LTD. All Rights Reserved. Developed by tri-Ace Inc.