- 조명을 적용할 때에는 정점별로 색상을 지정하는 대신 장면 광원들을 정의하고 정점별로 재질을 설정한다. 재질은 빛이 물체의 표면과 상호작용하는 방식을 결정한느 속성들의 집합이라 생각하자. 정점별 재질은 삼격형 면을 따라 보간되고 삼각형 메시의 각 표면 점마다 재질 값이 생긴다. 카메라에 도달한 표면의 색상을 조명 방정식으로 계산하는데, 이 계산에는 빛과 표면 재질 사이의 상호작용 방식이 관여하며, 표면 법선과 시점 위치 같은 추가적인 매개변수들도 관여한다.
- 표면 법선은 표면의 한 점의 접평면에 수직인 단위벡터이며 표면의 한 점이 바라보는 방향을 결정한다. 조명 계산을 위해서 광선이 메시 표면의 점으로 입사한 각도를 알아야 하기 때문에 삼각형 메시의 표면의 모든 표면 법선이 필요하다. 일반적으로 표면 법선은 삼각형의 세 꼭짓점에만 지정한다. 이 법선을 정점 법선이라고 부른다. 래스터화 과정에서 세 정점 법선의 보간을 통해서 표면 점의 법선이 결정되고, 임의의 삼각형 메시의 경우 법선 평균 기법을 이용해서 정점 법선을 근사한다. 점들과 벡터들을 변환하는 행렬이 A라고 할 때, 표면 법선을 변환하려면 반드시 (A-1)T를 사용해야 한다.
- 지향광이라고 하는 평행광은 아주 멀리 있는 광원에서 오는 빛을 묘사한 것이다. 따라서 평행광에서는 모든 입사광선을 서로 평행인 광선들로 근사할 수 있다. 실제 세상에서 지향광의 대표적인 예는 태양이다. 점광은 빛을 모든 방향으로 내뿜고, 대표적인 예로 전구(백열등)가 있다. 점적광은 빛을 원뿔 형태로 내뿜고, 대표적인 예로 손전등(플래시)이 있다.
- 주변광은 장면의 물체들에서 수없이 반사된 후 주어진 물체를 모든 방향에서 고르게 비추는 간접광을 본뜬 것이다. 반면 분산광은 특정한 한 방향에서 물체의 표면으로 들어와서 모든 방향으로 고르게 반사되는 빛이다. 분산광은 거칠거나 윤이 없는 표면을 본뜨는 데 쓰인다. 반영광은 특정한 한 방향에서 물체의 표면으로 들어와서 특정한 한 방향으로 원뿔 형태로 반사되는 빛이다. 이에 의해 특정 각도에서만 밝은 광택이 보이는 현상이 나타난다. 반영광은 매끄럽게 윤을 낸 표면을 본뜨는 데 쓰인다.
728x90
'서적 정리 > DirectX11을 이용한 3D 게임 프로그래밍 입문' 카테고리의 다른 글
70.조명된 두개골 예제 (0) | 2022.03.16 |
---|---|
69.조명 예제 (0) | 2022.03.07 |
68.조명 구현 (0) | 2022.03.05 |
67.점적광(Spot Light) (0) | 2022.03.03 |
66.점광(Point Light) (0) | 2022.03.03 |
65.평행광(Parallel Light) (0) | 2022.03.03 |
64.재질의 설정 (0) | 2022.03.03 |
63.조명 중간 정리 (0) | 2022.03.03 |
댓글