라벨이 ComputerGraphics인 게시물 표시

선형대수학 Linear algebra / Orthogonal basis

 https://twlab.tistory.com/30

GGX

이미지
 https://www.jianshu.com/p/9e6253897e39 Decima의 대략적인 구현도 UE4의 방식을 따르는데, 선택한 광원의 위치가 더 이상 반사광에 가장 가까운 지점이 아니라 N⋅H를 가장 크게 할 수 있는 지점(N이 가까울수록, H는 GGX 하이라이트 분포에 있거나, R이 L에 가까울수록 조명이 BRDF에 더 많이 기여하므로 Disney BRDF Explorer에서 GGX 분포를 직접 확인할 수 있습니다.) Decima는 다음과 같은 방법으로 빛의 방향을 선택합니다. T = ∥ R − ( L ⋅ R ) ∗ L ∥ R − ( L ⋅ R ) ∗ L ​ L = \sqrt{1 - s^2}*L_c+s*T L = 1 − s 2 ​ ∗ L c ​ + s ∗ T B, L_c, T를 좌표계로 하고 이 원판에서 N⋅H가 최대점에 도달하도록 phiφ를 찾는다. B = T × L c ​ L=\sqrt{1 - s^2}L_c+s*(\cos{\phi} * T + \sin{\phi} * B) L = 1 − s 2 ​ L c ​ + s ∗ ( cos ϕ ∗ T + sin ϕ ∗ B ) tan{\frac{\phi}{2}} t a n 2 ϕ ​ 는 보편적으로  sin ϕ ,  \cos{\phi} cos ϕ 을 나타낼수 있고  구간에서 단조롭게 증가하므로  \phi ϕ 의 계산은  x=tan{\frac{\phi}{2}} x = t a n 2 ϕ ​ 으로 변환됩니다.  그리고  f ( x ) = ( N ⋅ H ) 2 (분수에 근 부호가 포함되어 있으므로 이것을 선택하고 직접 (N \cdot H)^2 ( N ⋅ H ) 2 에대한GGX적NDF계산을 한다) f ( x ) = g x 4 + h x 3 + i x 2 + j x 2 + k a x 4 + b x 3 + c x 2 + d x 2 + e ​ , x = t a n 2 ϕ ​ x_0=0,f(x_0)=Karis's (N\cdot H)^2 x 0 ​ = 0 , f...