엉뚱하고 기발하게

Lambertian reflectance 본문

Graphics/OpenGL

Lambertian reflectance

songsmir 2020. 10. 19. 20:11

본 블로그는 개인적인 공부를 목적으로 작성되었습니다. 

작성된 블로그의 내용은 다른 사이트, 블로그를 참고하였으며, 저작권 문제가 있다면 수정하겠습니다.

또한 잘못된 내용으로 인한 불이익은 사용자에게 있습니다.


일반적으로 Diffuser Reflection에서 가장 많이 사용하는 모델이다.

Lambertian reflectance(램버시안 반사율)이란 관찰자가 바라보는 각도와 관계없이 같은 겉보기 밝기를 갖는다. 즉, 모든 방향으로 균일하게 빛을 반사하는 것이다.

 

Diffuse reflection 발생 과정

현실에서 Diffuse reflection의 경우 그림과 같이 빛이 표면에 흡수된 후 다시 방출되어 재질의 색상을 나타내게 된다. 하지만 컴퓨터를 이용해 이러한 것을 계산하는 것은 매우 힘들다. 그래서 전방향으로 균일하게 반사한다고 가정하며, 이것을 램버트 반사율을 이용해 모사한다.

 

Lambertian reflectance

그림은 램버시안 반사율을 가시화한 것으로 램버시안 반사율이 표면에서 균일하게 반사하는 것을 보여준다.

Lambert's cosine law

빛은 기울기에 따라서 빛의 양이 달라지는데, 그림은 기울기에 따라서 빛이 면적에 들어오는 양을 나타낸 것이다. 이러한 법칙을 수학적으로 정리한 것이 Lambert's cosine law이다.

 

램버시안 반사율이 표면에서 균일하게 반사되는 것이지만, 빛의 기울기에 따라서 빛의 양이 달라 세기가 달라지게 된다.

 

식은,

 

$ \begin{align*}
Diffuse Reflection &= N \cdot L \\
&= \lvert N \rvert \lvert L \rvert \cos \theta \\
&= \cos \theta
\end{align*} $

 

이다. 여기서 $N$은 표면의 법선 벡터, $L$은 광원 벡터이다.

식에서 $N$과 $L$은 단위 벡터로 실제로는 $\hat{N}$과 $\hat{L}$로 길이가 1이므로 최종 적으로 $\cos \theta$가 된다.


domaindeveloper.tistory.com/5

www.ktword.co.kr/abbr_view.php?m_temp1=5410

m.blog.naver.com/sorkelf/40133245688

en.wikipedia.org/wiki/Lambertian_reflectance

en.wikipedia.org/wiki/Lambert%27s_cosine_law

'Graphics > OpenGL' 카테고리의 다른 글

Blinn-Phong reflection model  (0) 2020.10.19
Phong reflection model(Phong lighting model)  (0) 2020.10.19
Vertex Buffer Object(VBO)  (0) 2020.10.11
Comments