공부/그래픽스

노멀 맵(Normal Map)이란?

셩잇님 2023. 6. 12. 01:42
반응형

 

 

1. 노멀 맵이란?

노멀 맵은 컴퓨터 그래픽에서 폴리곤 수를 늘리지 않고 표면의 시각적 디테일을 향상시키는 데 사용되는 기술입니다. 노멀 맵을 사용하면 3D 모델의 표면 노멀을 조작하여 범프, 틈새 또는 미세한 디테일과 같은 복잡한 표면 텍스처를 시뮬레이션할 수 있습니다.

 

기존 렌더링에서는 메시의 버텍스 노멀을 기반으로 조명 계산이 수행됩니다. 이러한 버텍스 노멀은 빛이 표면과 상호 작용하는 방식을 결정하여 음영과 모양에 영향을 줍니다. 하지만 버텍스 노멀만으로는 복잡한 표면 디테일을 정확하게 표현할 수 없습니다.

이러한 문제는 노멀 맵이라는 텍스처를 도입하여 이러한 한계를 해결합니다. 노멀 맵은 픽셀별 노멀 정보를 저장하여 원래 정점 노멀과의 편차를 나타냅니다. 노멀 맵의 각 픽셀은 특정 지점의 표면 노멀에 해당하는 3D 벡터를 인코딩합니다.

 

2. 노멀 맵의 적용

노멀 맵은 일반적으로 그레이스케일 또는 RGB 이미지로 저장되며, 각 픽셀은 해당 지점에서 표면 법선의 방향을 나타냅니다. 이미지의 값은 일반적으로 -1에서 1 범위로 정규화되며, -1은 뷰어를 직접 향하는 방향을 나타내고 1은 뷰어에서 직접 멀어지는 방향을 나타냅니다.

노멀 맵이 모델에 적용되면 그래픽 카드는 이를 사용하여 표면의 조명을 계산합니다. 모델의 각 픽셀에 대한 노멀 벡터는 노멀 맵에서 주변 픽셀의 노멀 벡터를 보간하여 계산됩니다. 그런 다음 계산된 노멀 벡터를 사용하여 표면의 조명을 계산하여 깊이와 디테일이 있는 듯한 느낌을 줍니다.


또한 렌더링 중에 노멀 맵이 3D 모델에 적용됩니다. 노멀 맵의 픽셀별 노멀은 버텍스 노멀을 섭동하는 데 사용되어 빛이 표면과 상호 작용하는 방식을 효과적으로 수정합니다. 이를 통해 복잡한 표면 디테일이 있는 것처럼 보이게 하여 추가 지오메트리 없이도 렌더링된 오브젝트에 깊이와 복잡성을 더할 수 있습니다.

이 효과를 얻기 위해 노멀 맵 텍스처는 일반적으로 특수 소프트웨어를 사용하여 만들거나 고해상도 기하학적 모델에서 생성합니다. 그런 다음 결과 노멀 맵을 저해상도 버전의 모델에 적용하면 시각적 품질은 유지하면서 계산 오버헤드를 크게 줄일 수 있습니다.

 

3. 노멀 맵의 장점
사실감 향상: 노멀 맵은 표면의 범프와 홈을 시뮬레이션하여 로우 폴리 모델에 상당한 사실감을 더할 수 있습니다.
폴리곤 수 감소: 노멀 맵을 사용하면 사실감을 유지하면서 모델의 폴리곤 수를 줄일 수 있습니다. 이를 통해 3D 모델을 사용하는 게임 및 기타 애플리케이션의 성능을 향상시킬 수 있습니다.
구현하기 쉽습니다: 노멀 맵은 비교적 쉽게 구현할 수 있는 기술입니다. 게임 엔진과 이미지 편집기 등 다양한 소프트웨어 패키지를 사용하여 구현할 수 있습니다.

 

4. 노멀 맵의 단점

아티팩트: 노멀 맵이 모델의 지오메트리에 제대로 정렬되지 않으면 노멀 맵에 이음새나 늘어짐과 같은 아티팩트가 발생할 수 있습니다.
성능: 노멀 맵은 특히 구형 그래픽 카드에서 성능에 약간의 영향을 미칠 수 있습니다.
제한 사항: 노멀 맵을 사용하여 모델에 날카로운 모서리나 구멍과 같은 완전히 새로운 기능을 만들 수는 없습니다.


5. 결론
노멀 맵은 렌더링된 오브젝트의 사실성과 시각적 충실도를 높이기 위해 비디오 게임이나 컴퓨터 시뮬레이션과 같은 실시간 그래픽 애플리케이션에서 일반적으로 사용됩니다. 노멀 맵은 미세한 텍스처, 주름, 표면 결함 등 개별 폴리곤으로 모델링하기에는 비현실적인 작은 규모의 디테일을 시뮬레이션하는 데 특히 효과적입니다.

 

전반적으로 노멀 맵은 텍스처 정보를 활용하여 렌더링 중에 표면 노멀을 조작함으로써 컴퓨터 그래픽에서 시각적으로 매력적이고 디테일한 표면을 구현하는 데 유용한 기술입니다.

 

 

 

반응형