본문 바로가기

유니티/그래픽스

[Unity] 머테리얼 파라미터 (2) - Normal, Height, Occlusion, Emission Map, Tiling and Offset

반응형

앞선 머테리얼 파라미터 1에 이어서 진행


Normal Map

노멀 맵이란?

노멀 맵과 비슷한 종류로 범프맵(Bump Map)이 있다.  범프 맵은 뭘까?

범프 맵은 텍스쳐를 사용하여 오브젝트에 높낮이와 굴곡 등을 표현할 수 있도록 해준다. 다시 말해, 텍스쳐와 동일한 크기의 범프 맵 텍스쳐가 있고, 그 텍스쳐에 오브젝트의 디테일한 요소에 대한 정보가 포함되어 있는 것이다. 그리고 이러한 정보는 오브젝트의 노말(법선벡터)에 전달되어 시각적으로 나타내어지는 것이다. Bump Map 외에도 Displace Map과 Height Map 등이 있다.

 

이 중 노멀 맵은 오브젝트의 각 노멀에 대한 각도의 정보를 갖고 있다. 3D 모델링 프로그램을 통해 제작된 3D 오브젝트는 일반적으로 노멀이 법선벡터를 갖지만 노멀 맵을 이용하면 이를 수정할 수 있다. 따라서 어떤 디테일한 영역을 추가하기 위해 부분적으로 모델링을 할 필요가 없다. 노멀 맵으로도 충분히 같은 효과를 낼 수 있기 때문이다. 예를 들어서 캐릭터의 옷에 단추가 붙어 있다면, 살짝 튀어나온 단추를 나타내기 위해 디테일한 매쉬를 사용할 필요 없이 노멀 맵만 적용하면 된다. 이렇게 했을 경우 폴리곤의 개수를 크게 줄일 수 있기 때문에 게임과 같은 리얼타임 기반의 콘텐츠에서는 노멀 맵이 중요하게 사용되는 것이다.

 

처리 과정

노멀 맵의 색상이 다양한색인 이유는 rgb를 이용해서 xyz(3차원 벡터)를 나타내기 때문이다. 다만 컬러풀한 색이 아니라 보랏빛을 띠는 이유는 수직방향(높낮이) 정보를 나타내는 축이 z 축이고 이에 해당하는 값이 b(파란색)이기 때문이다. 그리고 rgb(0.5, 0.5, 1)를 벡터로 변경하면 xyz(0, 0, 1)이 된다. 이때 (0.5, 0.5, 1)을 색으로 나타내면 아래와 같은 색이 나오게 된다. 따라서 이 색이 노멀 맵의 기본색이 되는 것이다.

 

 

장단점

장점 적은 비용으로 매쉬에 디테일을 추가할 수 있다.
단점 노멀의 각도에 대한 정보만이 있을 뿐이다. 따라서 외관선이나 그림자에 변동이 없다. 또한 단순히 노말의 각도만을 수정하기 때문에 표면의 굴곡끼리의 컬링이 발생하지 않는다.

Height Map

하이트 맵이란?

위에서 언급한대로 하이트 맵(Height Map) 역시 노멀 맵과 비슷하다. 하지만 노멀 맵과는 큰 차이가 있다. 노멀 맵은 노멀의 각도의 정보만을 갖고 있지만 하이트 맵은 노말이 갖는 높낮이 정보를 갖고 있다. 그리고 이러한 정보를 그래픽스에서 함께 처리하기 때문에 컬링 역시 사용되며 결과적으로 물체를 더욱 사실적으로 나타낼 수 있다.

 

처리 과정

하이트 맵은 높낮이만을 나타내면 되기 때문에 노멀 맵처럼 rgb형태로 알록달록 하게 할 필요가 없다. 단순히 흑백으로 높낮이를 표현한다. 0.5가 기준이 되며 1로 갈수록 높아지고 0으로 갈수록 낮아진다.

 

장단점

장점 매쉬의 디테일한 높낮이를 표현할 수 있다. 컬링 역시 가능하기 때문에 좀 더 사실적으로 묘사된다.
단점 상대적으로 높은 연산 비용이 발생한다.

Occlusion Map

오클루전 맵이란?

오클루전 맵은 간접광에 대한 정보를 전달해준다. 간접광은 주변광과 반사광으로 이루어지는데, 좁은 틈새 같은 빛이 잘 도달하지 않는 부분을 더욱 짙게 만들 때 필요하다.

하이트 맵과 마찬가지로 그레이 스케일로 나타내어 진다.


Emission Map

이미션 맵이란?

주로 발광하는 머테리얼의 표면에 대한 정보를 담고 있는 텍스쳐이다.

 

유니티는 기본적으로 LDR(Low Dynamic Range)의 컬러를 제공한다. 이는 0~1 사이의 컬러 값을 의미하며 0(어두운 색)부터 1(밝은 색)까지 모든 색을 나타냄에 부족함이 없다. 하지만 태양이나 전등의 빛처럼 1보다 더 밝은 값을 나타내기 위해 등장한 개념이 HDR(High Dynamic Range)이다. 이를 사용하면 밝은 빛을 나타낼 때 유용하게 사용할 수 있다.

 

우리는 이러한 Emission Map을 사용해서 Normal Map이나 Occlusion Map과 같은 방식으로 UV의 특정 부분만 따로 Emission을 적용시킬 수 있다. 이 역시 Material을 따로 제작하거나 Mesh를 디테일하게 해야 하는 부담을 줄여주기 때문에 최적화에 큰 도움이 된다.


Tiling and Offset

Tiling이란?

Tiling은 UV에 타일을 얼마나 배치할 것이냐 하는 값이다.

간단히 UV를 x축과 y축으로 얼마나 곱할 것이냐 하는 것과 같다.

 

Offset이란?

Offset은 보통 시작 기준점의 의미로 많이 사용된다. UV에서의 Offset 역시 마찬가지이다. 기준을 정할 때 사용한다.

이는 UV를 x축과 y축으로 얼마나 더할 것이냐와 같은 의미이다.

 

이 둘 모두 UV와 직접적으로 관련 있는 부분이다. 

반응형