Researcher to Developer

맵핑과 텍스처링, 손맵, 노말맵, 셰이딩 본문

3D 그래픽/3D 배경 이론

맵핑과 텍스처링, 손맵, 노말맵, 셰이딩

Probe29 2023. 9. 5. 11:05

* 매핑(맵핑)

모델을 사실적으로 보이기 위해 2D 이미지를 3D 의 굴곡이 있는 표면 위로 옮겨 표현하는 것

평면상에서 작성한 무늬와 질감을 입체로 변환하는 작업이며, 이 작업을 통해 모델은 사실성을 획득하게 된다.

 

3D 모델 - 여러 면을 가진 다각형 형태 

3D 모델의 겉면에 씌울 텍스처 - 완전한 평면

 

매핑의 종류

손맵, 노말맵, 알파맵, 오퍼시티맵 etc

 

 

 

 

* 텍스처

Material 머티리얼에 사용되는 이미지를 말하며, 머티리얼이 적용되어있는 표면에 매핑된다.

3D 정점에 UV 좌표라는 것을 적용해서 매핑할 때 사용되는 메모리에 로드된 이미지

노말 맵은 특별한 텍스처 종류 중 하나

노말 맵은 노멀 방향 정보(물체의 표면 방향)만을 표현하는 텍스처이기 때문에 물체 표면의 색상 정보와 무관하다.

색상 정보는 일반적인 텍스처를 통해 표현하되 표현의 질감 처리만 따로 담당하는 것이며,

기본 텍스처와 노말맵 텍스처를 함께 사용한다.

 

 

 

 

* 텍스처링

텍스처를 3D 오브젝트에 씌우는 것

= 텍스처의 UV 좌표를 이용하여 텍셀을 샘플링해서 텍스처 매핑하는 것

 

효율적인 입체감 및 질감 묘사를 위해 텍스쳐 매핑(맵핑)작업은 필수다

경우에 따라서 게임 엔진이나 각종 플러그인에서 맵핑 작업을 쉽게 도와준다.

 

 

 

 

* 손맵

말 그대로 오브젝트를 채색할 때 색, 음영, 질감 등을 모두 작업자가 직접 손으로 표현해 주는 방법

주로 포토샵, 바디페인터, 머드박스 등 픽셀 페인팅 기반의 툴을 이용해서 작업한다

 

* 손맵 작업이 필요한 이유

게임을 플레이하려면 최적화가 필요한데, 대다수의 게임들은 실사화된 고퀄리티의 그래픽을 요구한다.

그래서 보통은 텍스처맵과 손맵 작업을 같이해서 최적화될 수 있는 고퀄리티 그래픽을 만든다.

 

손맵 작업을 하게 되면 텍스쳐만 쓰는 작업자보다 입체에 음영을 주는 감각과 이해를 높일 수 있게 되니

텍스쳐만 사용한다고 하더라도 손맵 작업을 연습해 감각을 기르는 게 중요하다.

 

텍스쳐를 이용한 음영 등의 세부 묘사를 해 연산 효율을 높이는 노말맵(Normal Map)을 사용하는 경우

일반 텍스쳐와 노말맵 텍스쳐를 정확한 위치에 매핑할 필요가 있다.

 

 

 

 

* 노말맵

폴리곤의 법선 벡터(Normal Vector)의 값을 사용하여 로우 폴리곤의 그래픽 환경에서 입체감 및 질감을 구현하는 방법.

물체의 질감을 있는 그대로 폴리곤으로 표현하기에는 메모리를 많이 차지하는데,

이걸 텍스쳐로 대신 표현해주는 일종의 눈속임 기술로써 폴리곤을 적게 사용하고도 비슷한 효과를 낼 수 있게 해준다.

 

 

 

 

* 노말맵 사용의 배경

컴퓨터 그래픽에서 폴리곤은 그 꼭지점의 갯수가 많으면 많아질 수록

파일 크기와 메모리를 차지하는 비중과 그것을 실시간으로 화면에 처리하는 데 필요한 연산량이 늘어난다.

 

개발자들은 게임의 프레임율을 높이고 게임이 안정적으로 진행되도록 하기 위해

적은 수의 폴리곤과 저해상도의 텍스쳐 맵을 사용해 왔다.

그러나 폴리곤 수와 텍스쳐 해상도를 낮게 설정할수록 게임의 사실성은 점점 줄어든다.

 

광원, 셰이더 및 각종 특수효과와 텍스처 등을 모두 제외하고 

폴리곤만을 화면에 출력한다고 할 때

약 백만 개의 삼각형으로 이루어진 폴리곤을 4 ~ 5개체 정도만 화면에 출력해도 과도한 연산량을 버티기 어려워진다.

 

하지만 노말 매핑은 텍스처에 폴리곤의 노말 벡터 정보를 모두 담아버리므로

아무리 다수의 삼각형으로 이루어진 폴리곤이라도

노말맵으로 저장된다면 파일의 용량이나 메모리 사용량은 노말 맵 텍스쳐의 해상도만큼 차지할 뿐이므로 

적은 연산량으로 높은 퀄리티의 효과를 낼 수 있다.

 

하이폴리곤 노말 맵 생성 → 로우 폴리곤에 적용

결과적으로 로우 폴리곤 데이터에 하이폴리곤 셰이딩이 보여진다.

 

 

 

 

* 노말맵 원리

물체의 표면에 굴곡이 있을 때 그 굴곡 때문에 표면의 방향이 바뀌고

그 방향에 따라 빛이 다르게 반사되기 때문에 보는 사람이 그 굴곡을 느낄 수 있다.

 

결국 표면 질감에서 중요한 건 진짜 굴곡이 아닌 반사각이기 때문에

3D그래픽으로 물체를 표현할 때 표면을 실제로 굴곡이 있는 형태로 만들지 않고,

평면으로 만든 다음 그 위에 어떤 각도로 보일지 그려놓으면 하나의 폴리곤으로 굴곡이 있는 표면을 표현할 수 있다.

 

단, 텍스쳐는 폴리곤이 아닌 픽셀로 된 이미지이므로, 노말 맵핑에는 per-pixel(픽셀 단위)라이팅으로 진행된다.

 

 

 

일반적으로 컴퓨터 화면상에 물체의 표면이 렌더링되어 나타나게 하려면

가상의 정점과 다각형으로 이루어진 3차원 물체를

2차원 컴퓨터 모니터 스크린상에 투영하는 렌더링 파이프라인을 거쳐야 한다.

이 과정에서 셰이딩을 계산해주게 되는데 셰이딩은 물체의 음영이 어떻게 보여질지 처리하는 과정이다.

셰이딩을 물체의 음영자체라고 본다면

이러한 셰이딩의 전제조건은 물체 표면의 존재여부, 그리고 빛이다.

이 중 빛은 위치가 고정되어 있으나 물체의 표면은 굴곡의 형태에 따라 다양한 방향성을 가진 형태로 보여져야 한다.

만약 물체의 표면이 방향성이 없는 상태에서 한 방향으로만 보여진다면 2차원 평면처럼 보여질 테니까!

뒤에 있는 면이나 앞에 있는 면 혹은 옆에 있는 면이 한 방향으로 보여진다면 앞, 뒤, 옆을 구분할 수 없겠지요.

 

따라서 물체의 표면을 분간하기 위해서는 물체 표면의 방향을 알아야 하는데

그 방향을 알아내기 위해서 3차원의 축을 기준으로 방향을 설정하는 것이 노말 벡터(Normal Vector)입니다.

벡터는 크기와 방향을 갖는 수학적 개념인데 3차원 그래픽에서 유용하게 쓰이는 필수적인 개념입니다.

 

노맵 맵 종류 : AO(Ambient Occlusion)맵, Diffuse 맵, Specular 맵, Gloss 맵

 

 

 

 

* 셰이딩

셰이딩(shading) 또는 그림자 처리

3차원 컴퓨터 그래픽 분야의 렌더링 과정 또는 소묘 과정에서

빛의 거리와 각도에 따라 물체 표면의 조도를 변화시키는 기법

 

 

* 셰이딩의 배경

3차원 물체는 다각형의 모임으로 구성된다. 

정육면체를 구성하기 위해서는 6개의 사각형이 필요하다.

 

다만, 물체에 입체감을 주기 위한 수단으로

단순히 면을 계산하고 텍스쳐를 입히는 것만으로는 입체감 있는 물체가 만들어지지 않는다. 

 

각각의 면에 색을 입히고 여기에 빛에 의한 명암 등 실제 물체에 대한 특성을 적용하여 질감이나 입체감을 부여하게 된다.

이렇게 생성된 면의 표면에 색을 칠하여 입체감을 높이는 기법을 '셰이딩' 이라 한다. 

 

또한, 셰이딩은 3D 그래픽 프로그램의 렌더링 기능의 하나로 

3D 오브젝트의 표면을 처리할 때 조명의 위치와 물체의 기울기, 색깔, 밝기에 반응하여 오브젝트에 음영을 주는 것이다.

 

각각의 폴리곤이 표면과 빛의 각도에 따라서 밝기가 달라지므로 더욱 사실적으로 물체를 표현할 수 있고

눈으로 식별하기도 쉬워지는 효과가 있다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

출처

https://blog.naver.com/PostView.nhn?blogId=wlsl7068&logNo=221364988542
http://media.cgland.com/news.html?part=&modes=view&page=674&no=3081&word=
https://namu.wiki/w/%EB%85%B8%EB%A9%80%20%EB%A7%A4%ED%95%91
 

[매핑] 3D매핑(맵핑) 파헤치기 (손맵, 노말맵, 디퓨즈맵, AO맵, 스펙큘러맵)

안녕하세용 오핫직매니저입니다 :D 오늘은 민족 대명절 추석이에요 여러분들 모두 맛있는 음식 많이 드셨...

blog.naver.com

 

노멀 매핑 - 나무위키

이 저작물은 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다. (단, 라이선스가 명시된 일부 문서 및 삽화 제외) 기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권

namu.wiki

 

미디어[media.cgland.com]

"[기획특집] 노말맵(Normal Map)이란 무엇인가? 그림을 클릭하시면 큰 이이지를 보실 수 있습니다. FPS 게임 Doom3와 언리얼3의 퀄리티를 보았는가. Doom3와 언리얼3의 높은 퀄리티가 인정을 받는 중 하

media.cgland.com

 

 

 

 

 

 

'3D 그래픽 > 3D 배경 이론' 카테고리의 다른 글

하이&로우폴리곤, 리토폴로지  (0) 2023.09.06
모델링 워크플로우  (0) 2023.09.06