SuHong Log

Normal Map 텍스처 제작하는 법 (2) Painting 본문

Tech Art

Normal Map 텍스처 제작하는 법 (2) Painting

SuHong 2024. 11. 30. 23:44
728x90
반응형

 
지난 포스트에 이어서 노말 맵을 만드는 두 번째 방법을 소개하겠습니다.
 
전에 언급했듯이, Normal Map에는 법선 벡터 값을 저장합니다. 법선 벡터 한 평면이나 직선에 대하여 수직인 벡터로, 노말 맵 텍스처는 모델링의 면이 향하고 있는 방향을 법선 벡터로써 텍스처에 기록한 것입니다.
따라서 노말 맵으로 빛이 메시 표면에 닿았을 때 반사되는 방향을 알 수 있는 것입니다.

대충 누끼 딴 돌 사진 Again

 
그렇기 때문에 위와 같은 Diffuse Map에서 돌의 면이 향하고 있는 방향을 유추해 낼 수 있다면, 노말 맵도 유추할 수 있습니다.

뭔 소린가 싶을텐데 직접 만들어 보면서 알아봅시다

 


 
Normal Map의 방향 구분하는 법 에도 설명해 두었지만, R 채널은 X 축, G 채널은 Y 축, B 채널은 Z 축 기준의 명암표현입니다. 즉, R 채널은 오른쪽, G 채널은 위쪽, B 채널은 정면에서 빛을 비추었을 때의 모습입니다.
 

돌 벽 텍스처와 해당 노말 맵 텍스처

 

노말 맵 텍스처의 RGB 채널

 

그러니 원래의 텍스처를 보았을 때 오른쪽, 위(이 포스트에서는 DirectX 기준이니 위쪽 대신 아래쪽), 정면에서 빛을 비추었을 때의 모습을 각각 그릴 수 있다면 노말 맵도 그릴 수 있는 것입니다.

 


네. 결국은 직접 그려야 한다는 말입니다.


저번 포스트도 그렇고 순 노가다 뿐이지만 어쩔 수 없습니다. 예쁘게 만들려면 노동력이 들어갑니다.
 


 

 

포토샵에 이미지를 띄웁니다.

 

 

채도를 낮추어 흑백으로 만듭니다. 이걸 바탕으로 그림자를 만들 겁니다.

R 채널부터 시작하겠습니다. 빛이 오른쪽에 있을 때 빛과 그림자가 어떻게 맺힐지 상상하면서 묘사해 줍니다.

 

이게 최선인가 진짜
하지만 원본 이미지와 그럴듯하게 합성하면 됩니다.

 

제작할 때, 노말 맵은 RGB 값이 기본적으로 128, 128, 255 이므로 R 채널은 배경색을 128로 넣으면 됩니다.

G 채널도 마찬가지로 제작하되, 빛이 아래쪽에서 비출 때의 모습을 그려줍니다.

 

원본 이미지는 위에서 빛을 비춘 듯하게 되어 있기 때문에 Ctrl + i 로 반전해서 활용하면 됩니다

 

B 채널은 빛을 정면에서 비추었을 때 모습이기 때문에, 그림자를 따로 그려주기보다는 이미지의 요철이 더 잘 보이도록 색상 대비값을 조절하면 됩니다. B 채널이므로 배경색 값은 255입니다.

 

 

 

이제 RGB 세 채널을 하나로 합치면 됩니다.

 

이때 RGB 채널을 통째로 복사해 넣으면 약간 어두워지니 한 채널씩 선택해서 각각의 RGB 채널로 붙여 넣어 줍니다.

 

 

배경색을 찍었을 때 색상값이 128, 128, 255 이 나오면 됩니다.

하지만 보시다시피 그대로 쓰기엔 많이 어색합니다. 그림자가 잘 못 그려진 부분은 수정하고, 조금씩 보정하며 제작하면 됩니다.

 

만든 이미지를 블러하고, 겹치고 다시 그리는 과정을 반복합니다

 

어느 정도 수정이 되었으면, 마지막으로 지난 포스트에서 노말 맵 자동 생성 사이트에서 만든 텍스처와 겹쳐서 보정합니다. 저는 윗단계에서 그림자와 블러 효과로 날아간 디테일을 다시 살리는 데에 사용했습니다.

 

 

 

이렇게 포토샵만으로 노말 맵 텍스처를 제작했습니다.

언리얼 엔진에서 적용했을 때


 

Baked Normal Map Painted Normal Map

 

이렇게 노말 맵을 직접 그리는 방식을 알아보았습니다. 저는 그림을 잘 그리는 편이 아니라서 포토샵 보정 기능을 더 많이 활용했지만, 그림을 배운 분이라면 수월하게 제작할 수 있을 것 같습니다.

 

 

728x90
반응형