Appearance
범프 매핑의 앞에 있는 것(1)~패럴랙스 매핑
[칼럼 핵심 요약]
노멀 맵을 활용한 범프 맵핑은, 1 폴리곤으로 표현하기에는 코스트 퍼포먼스적으로 맞지 않는 미세 요철을 표현하기 위해 매우 편리한 기술이었다. 실제로 현대의 3D 게임 그래픽에서 가장 보급된 기술이라고 할 수 있을지도 모른다.🌐 원문 링크: バンプマッピングの先にあるもの(1)~視差マッピング (Mynavi News)
📅 원문 발행일: 2008-05-16 | ✍️ 저자: 西川善司 (니시카와 젠지 / Zenji Nishikawa)
NOTE
💡 현대 그래픽스 관점에서의 발전사 (Modern Retrospective)
- 본 칼럼에서 다루는 핵심 렌더링 기법은 현대 실시간 렌더링 엔진(DirectX 12, Vulkan, Unreal Engine, Unity)의 기초 이론을 구성하고 있으며, 최신 하드웨어 가속 기법 및 컴퓨트 셰이더와 결합하여 고도화되었습니다.
📖 본문 해설
[원문 리드문] > 노멀 맵을 활용한 범프 매핑은, 1 폴리곤으로 표현하기에는 코스트 퍼포먼스적으로 맞지 않는 미세 요철을 표현하기 위해 매우 편리한 기술이었다. 실제로 현대의 3D 게임 그래픽에서 가장 보급된 기술이라고 할 수 있을지도 모른다.
노멀 맵을 활용한 범프 맵핑은, 1 폴리곤으로 표현하기에는 코스트 퍼포먼스적으로 맞지 않는 미세 요철을 표현하기 위해 매우 편리한 기술이었다. 실제로, 프로그래머블 셰이더 아키텍쳐 베이스의 GPU가 되어 이후, 3D게임 그래픽스에서 가장 보급된 기술이라고 할 수 있을지도 모른다.
그런데, 이 기술도 만능이 아니고, 특정의 조건하에서는 파탄해 버린다. 이를 개선하는 개량판 범프 매핑이라고도 할 수 있는 것이 패럴랙스 오클루전 매핑(POM)(Parallax Occlusion Mapping)이다.
노멀 맵에 의한 범프 맵핑의 약점
노멀 맵을 활용한 범프 매핑은 미세 요철의 노멀 벡터를 이용하여 실시간으로 광원에 대해 픽셀 단위로 음영 계산을 하기 때문에, 그 입체적인 음영은 광원이 이동하면 제대로 움직이고, 먼 곳에는 정말 미세 요철이 있는 것처럼 보인다. 그러나, 실제로는 요철의 지오메트리 정보가 없기 때문에, 시점을 이 요철에 너무 가깝게 하면 거짓말이 노출된다.
삼인칭 시점의 3D 게임이라면 어느 정도 시점(카메라)을 대상물에서 떼어 놓을 수 있지만, 1인칭 시점의 게임에서는 좀처럼 그렇게도 가지 않는다.
"F.E.A.R."(MONOLITH, 2005)에서. 원목에는 요철이 제대로 있는 것처럼 보인 벽돌 벽도 가까워져 보면 이대로. 실제로 요철은 없고, 평평한데도 음영이 붙는다는 부자연스러움이 노출된다. (C)2005 Monolith Productions, Inc. All rights reserved. Published by Vivendi Universal Games, Inc. under license from Monolith Productions, Inc. F.E.A.R., Vivendi Universal Games and the Vivendi Universal Games logo are trademarks of Vivendi Univers trademarks or trademarks of Sierra Entertainment, Inc. in the U.S. and/or other countries. MONOLITH and the Monolith logo are trademarks of Monolith Productions, Inc. All other trademarks are property of their respective owners.
범프 매핑에 있어서, 시점이 가까워져 「부자연성」이 노출되는 이유는 무엇인가라고 생각해 보면,
- 실제로 요철이 있으면, 그 요철에 의한 전후 관계의 차폐가 느껴질 것인데, 그것이 없고, 평면에 음영이 붙은 것처럼 보인다
라는 부분에 있는 것을 알 수 있다.
이를 해결해 나가면 범프 매핑의 약점을 극복할 수 있을 것이다.
향상된 범프 매핑 "패럴랙스 매핑"
이러한 생각하에 현재까지 다양한 개량형 범프 매핑이 고안되었다.
SIGGRAPH 2001에서 발표된 「Polynomial Texture Mapping」(다항식 텍스처 매핑)라는 것이 그 일례이지만, 그것보다 심플하고, 사전 계산이 불필요하고 구현하기 쉬운 「패럴랙스 매핑」(Parallax Mapping) 쪽이 인기를 모아, 그 개량과 보급이 진행되고 있다.
노멀 맵을 활용한 범프 맵핑에서는, 미세 요철의 정보로서, 그 미세 요철의 노멀 벡터만을 이용하지만, 시차 맵핑에서는, 노멀 벡터에 더하여, 그 미세 요철의 높이 정보도 이용한다. 높이 정보는, 노멀 맵을 작성할 때의 중간 정보였던 「하이트 맵」(Height Map) 그 자체에 상당하기 때문에, 귀찮지 않다.
노멀 맵 기반의 범프 맵핑의 경우, 어느 픽셀에 대해서 묘화를 실시하는 경우, 그 픽셀에 대응한 (텍스처 좌표의) 노멀 맵으로부터 취한 노멀 벡터로, 음영 계산을 한다. 이것은, 즉, 시선과 그 폴리곤상의 픽셀의 교차점에 대해서, 실제의 요철량을 무시하고, 음영 계산을 하고 있는 것이다.
그 폴리곤에 대해 정면끼리, 상대적으로 보고 있는 때에는 이것으로도 부자연스럽지는 않지만, 시선이 비스듬해져 오면, 이 요철의 음영과, 그 표현하고 싶은 요철량의 어긋남이 커져 부자연이 되어 버린다.
그래서,이 요철량을 배려해 가자는 것이 패럴랙스 매핑이 된다.
노멀 맵에 의한 범프 맵핑의 경우, 요철을 상대로 보고 있을 때에는 부자연스러움은 그다지 없지만…
대각선에서 잡아 보면 요철의 원근이 배려되지 않기 때문에 이런 느낌이 되어 버린다
본래라면 요철의 원근이 배려되어 이렇게 보일 것. 이것을 시도하는 것이 불일치 매핑
표현하려고 하고 있는 그 요철이 「굉장히 매끄럽다」라고 하는 가정을 세울 때, 묘화 하려고 하고 있는 픽셀 위치의 높이와, 그 시선이 그 요철과 교차하는 장소의 높이는 거의 같다고 할 수 있다. 그러면, 묘화하고자 하는 픽셀 위치의 높이 정보와 시선이 교차하는 위치의 발밑이, 높이 정보를 배려한 노멀 맵의 참조 위치라고 할 수 있다.
이 "조작"에 의해, 움푹 패인 각도의 시선 앞의 요철도 나름대로 입체적으로 보이게 된다.
이것이 패럴랙스 매핑이다.
일반 범프 매핑 부자연스러움의 원인
불일치 맵핑은 노멀 맵 참조 위치를 요철 높이를 기록한 하이트 맵의 정보를 바탕으로 어긋난 어레인지판 범프 맵핑
이 패럴랙스 매핑을 채용한 3D 게임은 이미 몇 가지 존재하고 있다. 픽셀 쉐이더의 부하는 거의 노멀 맵 베이스의 범프 매핑과 다르지 않다는 특성도 그 채용을 적극화시키고 있는 것 같다. (계속)
"F.E.A.R."(MONOLITH, 2005)에서. 왼쪽이 단순한 노멀 맵 기반의 범프 매핑, 오른쪽이 패럴랙스 매핑. (C)2005 Monolith Productions, Inc. All rights reserved. Published by Vivendi Universal Games, Inc. under license from Monolith Productions, Inc. F.E.A.R., Vivendi Universal Games and the Vivendi Universal Games logo are trademarks of Vivendi Univers trademarks or trademarks of Sierra Entertainment, Inc. in the U.S. and/or other countries. MONOLITH and the Monolith logo are trademarks of Monolith Productions, Inc. All other trademarks are property of their respective owners.
"F.E.A.R."(MONOLITH, 2005)에서. 왼쪽이 단순한 노멀 맵 기반의 범프 매핑, 오른쪽이 패럴랙스 매핑. (C)2005 Monolith Productions, Inc. All rights reserved. Published by Vivendi Universal Games, Inc. under license from Monolith Productions, Inc. F.E.A.R., Vivendi Universal Games and the Vivendi Universal Games logo are trademarks of Vivendi Univers trademarks or trademarks of Sierra Entertainment, Inc. in the U.S. and/or other countries. MONOLITH and the Monolith logo are trademarks of Monolith Productions, Inc. All other trademarks are property of their respective owners.
「Tom Clancy's Splinter Cell Chaos Theory」(UBI SOFT, 2005)로부터. 왼쪽이 단순한 노멀 맵 기반의 범프 매핑, 오른쪽이 패럴랙스 매핑. (C)2005 Ubisoft Entertainment. All Rights Reserved. Splinter Cell, Splinter Cell Chaos Theory, Sam Fisher, Ubisoft, and the Ubisoft logo are trademarks of Ubisoft Entertainment in the U.S. and/or other countries. If you need to speak about way:Tom Clancy's Splinter Cell Chaos Theory. If you need to speak only about the Splinter Cell licenci, you have to name it this way:Tom Clancy's Splinter Cell(R)
「Tom Clancy's Splinter Cell Chaos Theory」(UBI SOFT, 2005)로부터. 왼쪽이 단순한 노멀 맵 기반의 범프 매핑, 오른쪽이 패럴랙스 매핑. (C)2005 Ubisoft Entertainment. All Rights Reserved. Splinter Cell, Splinter Cell Chaos Theory, Sam Fisher, Ubisoft, and the Ubisoft logo are trademarks of Ubisoft Entertainment in the U.S. and/or other countries. If you need to speak about way:Tom Clancy's Splinter Cell Chaos Theory. If you need to speak only about the Splinter Cell licenci, you have to name it this way:Tom Clancy's Splinter Cell(R)
(트라이Z 니시카와 젠지)