#review 범프매핑의 개량형 - 니시카와 젠지
노멀 매핑(범프 매핑(bump mapping)과 노멀 매핑(normal mapping)은 같은 뜻으로 쓰인다. 좀 더 익숙한 노멀 매핑을 사용.)이 가진 가장 큰 단점은 “니가 어디에서 바라보든지 난 상관하지 않아.”이다. 즉, 시야 정보 없이 노멀맵에 저장된 normal로 per-pixel lighting을 한다. 이렇다 보니 비스듬히 보거나 가까이서 보게 되면 평면에 제발 속아달라고 정성스럽게 음영을 표현한 그대로 보이게 된다.
그래서 시선 방향을 고려해서 노멀을 샘플링 하는 시차(Parallax) 매핑들이 나오게 된다. 두 가지를 소개하는데 간단히 요약하면 다음과 같다.
바로 노멀 텍스쳐에서 샘플링해서 쓰는 노멀 매핑과는 달리 시차 매핑(Parallax Mapping)은 높이 맵(height map) 정보를 이용해서 참조하는 노멀을 한번 계산해서 샘플링하게 된다.
높낮이가 급격히 변하는 부분에서는 높이 맵 정보를 이용해서 참조하는 게 너무 근사라 제대로 표현하지 못하는데, 오목(凹)으로 높이 맵 정보를 더 근사해서 노멀 맵을 샘플링하는 시차 차폐 매핑(Parallax Occlusion Mapping)으로 극복할 수 있다. 이렇게 오목(凹)으로 계산할때 광원 위치와 방향을 안다면 그림자 또한 계산할 수 있는데, 높이 맵과 교차점에서 광원 방향으로 다시 한번 교차 검사를 해서 셀프 섀도(self shadow)까지 표현할 수 있게 된다.
아직까진 오브젝트는 노멀매핑으로만 해도 충분해 보이고 보통 카메라 각도에 따라서 후지게 보일 수 있는 벽면이나 바닥에 사용한다.