맛동산이

illumination model 본문

CS/컴퓨터그래픽스

illumination model

진ddang 2022. 6. 21. 20:25

illumination model

그래픽스의 최종적인 목표는 현실과 구분할수 없을 정도의 정확한 표현이다. 하지만 이를 위해서는 다음과같은 조건이 존재한다.

  1. 물체들에 대해서 정확한 표현이 이루어 져야 한다.(질감, 크기, 색감 등등..)
  1. 빛의 효과를 잘 반영 해야한다.

light source

우리가 보는 물체는 광원이 아니며, 불투명 하다. 여기에서 우리가 물체를 보기 위해서는 빛이 반사 되어야 하고 이러한 빛의 총합은 아래와 같다.

  1. 광원에서 오는 빛
  1. 다른 물체의 반사 되는 빛

광원은 종류가 2개가 있다.

  1. point source(점광원) : 묘사 하고자 하는 물체보다 들어오는 빛이 상대적으로 작은 경우
  1. distributed light(확산광원) : 묘사 하고자 하는 물체보다 빛의 넓이가 상대적으로 큰 경우

(레이저 포인터와 스탠드의 차이라고 생각하면 이해하기 편함.)

빛의 종류

빛의 종류는 다양하고, 고려하는 부분에 따라서 조명방정식은 확장이 된다. 이에 대해서 간략하게 설명한다.

  1. ambient light(주변광) : 항상 모든 방향에서 존재하여 일정한 수준의 밝기를 의미하는것으로, 컴퓨터 내부의 시적허용과 같은 빛이다.(즉 실제로는 아무것도 안보이더라고 어느정도 보이기 위해서 밝기를 주는것.)
  1. defuse reflection(확산광) : 빛이 물체에 난반사 하여 물체의 밝기를 주는 빛을 의미한다.
  1. totla defuse reflection : ambient light + defuse reflection
  1. light source attenuation : 확산광에서 거리에 의한 감쇠효과를 적용한 방법

ambient light(주변광)

: 균일한 빛을 내는 광원을 의미한다.공간적인 특성이 없고, 방향적인 특성도 없다. 어디에 있던 동일한 빛을 준다는 조명 모델을 의미한다.

즉, 방향과 세기 이런것이 아닌, 물체의 optical properties 에 의해서만 빛의 반사 차이가 존재 한다고 한다.

즉, 물체의 재질 특성만 고려하는 빛이다.

주변광의 조명 방정식

ka는 주변반사 계수로 물체의 재질의 속성에 따라서 빛을 얼마나 반사하는지에 대해서 의미한다.

Ia는 주변광의 빛의 세기다. 모든 물체상에 위치, 각도 상관없이 동일하다고 생각한다.

확산반사 (diffuse reflection)

물체의 표면이 울퉁불퉁하거나, 고르지 못하는 경우에는 빛이 한점으로 반사 되는것이 아닌, 확산해서 반사 된다.

이런 경우 거의 모든 면으로 동일하게 빛이 반사된다.

들어오는 광원을 회색이라고 했을때, dA는 광원가 맞닿는 부분을 의미하고, suface2에서는 dA/cos@가 되는것이다.

이처럼 굴절각이 존재한 표면의 경우에는 확산반사가 일어난다. 따라서 확산 반사 계수는

하지만 이때는 점광원이라는 특징이 있다.

n과 l이 정규화 되서 1, 1이면 cos@가 되는것이다.

total diffuse reflection

그런데 이런 방식으로 하게 되면, 관측자의 위치에서 보이는 부분임에도 불구하고 보이지 않는경우가 생긴다. (빛이 너무 작게 가기 때문에 ) 이를 보완해주기 위해서 전반사를 사용한다.

주변광모델을 포함하는것으로 해결해 주었다. 위 방정식에서는 kaIa를 의미함.

light source attenuation이다.

하지만 위의 방정식들은 광원과 물체의 거리가 전혀 고려되어 있지 않다.

따라서 빛의 감쇠 효과를 고려하지 않았는데 이를 고려한 방식을

주변광은 공간적인 특성과 방향에 전혀 상관없기 때문에 거리효과를 반영하지 않고, 확산방정식에만 거리의 특성을 반영한다.

여기에서

분모가 너무 작아지는것을 방지하기 위해서 상수항 c1을 넣는것으로 감쇠효과를 유지한다.

최종적으로 빛은 3색의 혼합을 통해서 색을 만들어내며, 각 3원색의 방정식은 다음과 같이 표현될수 있다.

총정리

빛에 따라서 확산 반사의 경우에는

I = Iaka + fakdId의 방정식을 따르는데 이때

ka는 재질에 따라서 얼마나 빛을 반사 하는지에 대한 계수.

Ia는 거리와 방향에 상관없이 일정한 주변광을 의미하며 빛의 세기

Kd는 재질에 따라서 얼마나 빛을 반사 하는지에 대한 계수이며

Id는 점 광원으로, 방향과 세기가 존재하며,

Fa는 물체와 빛의 거리를 고려한 방정식이다.


Uploaded by N2T

반응형

'CS > 컴퓨터그래픽스' 카테고리의 다른 글

shading model  (0) 2022.06.21
specular reflection  (0) 2022.06.21
visible-surface determination  (0) 2022.06.21
parametric cubic  (0) 2022.06.21
3d viewing  (0) 2022.06.21