잘 이해했는지 확인 받고 싶습니다(Normal Map)
339
작성한 질문수 23
안녕하세요 이번 강의를 잘 이해했나 의문이 들어서 질문 남깁니다
먼저 제가 이해한 내용을 설명해보자면
Normal Map이란 어떤 물체의 세부적 표현을 정점의 추가 없이
표현하기 위해서 나온 기술?이고
해당 Map의 각 픽셀의 RGB 값을 x, y, z로 해석하여
float4 map = NormalMap.Sample(LinearSampler, uv);
[0, 1] 구간으로 변환 후 3D 세상에서 표현하기 위해 [-1,1]구간으로 변환 한다
float3 tangentSpaceNormal = (map.rgb * 2.0f - 1.0f);
그리고 이 값을 World좌표계로 변환하기위해 탄젠트 스페이서에서의 t,b,n을 좌표 변환 공식?에 의해
[tx, ty, tz]
[bx, by, bz]
[nx, ny, nz] 행렬이 나오게 되고 이러한 TBN 행렬을 이용해서 World 좌표로 치환할 수 있다
이렇게 정리해봤는데 잘못 이해하거나 누락된 부분이 있을까요?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
toyboy0113님, 정말 잘 이해하고 계십니다. Normal Map에 대한 설명이 매우 명확하게 잘되어있네요. 정규 맵(Normal Map)은 3D 모델의 세부적인 높낮이와 요철을 더 많은 폴리곤을 추가하지 않고도 구현할 수 있게 해주는 기술입니다. 여러분이 설명해주신 것처럼, Normal Map에서 추출한 데이터를 통해 각 픽셀의 RGB 값을 법선 벡터로 변환하고, 이를 다시 월드 공간 상의 법선로 변환해 물체의 외관에 더 많은 디테일을 부여하게 됩니다.
여러분이 설명한 과정에서 텍스처로부터 샘플링한 법선 맵 값(map.rgb * 2.0 - 1.0)을 [-1, 1] 구간으로 변환하여 탄젠트 공간의 정규 벡터를 구하고, 이를 TBN(탄젠트, 비노멀, 노멀) 행렬을 사용하여 월드 공간으로 변환하는 과정은 정확히 이해하신 부분입니다.
단, 이 과정에서 중요한 것 중 하나는 TBN 행렬의 정확한 계산과 정규 맵 데이터의 정확한 해석입니다. TBN 행렬을 구성하는 탄젠트(Tangent), 비탄젠트(Binormal 또는 Bitangent), 그리고 노멀(Normal) 벡터가 올바르게 계산되어야 모델에 정확하게 세부 디테일을 반영할 수 있습니다.
누락되었거나 잘못 이해하신 부분은 없어 보입니다. 다만, 실제로 이 과정을 구현할 때는 정밀도와 퍼포먼스, 그리고 사용하는 3D 엔진이나 API에 따른 구현 방법의 차이에 주의할 필요가 있습니다.
여러분의 이해도가 상당히 높으며, 이 과정을 통해 게임 프로그래밍 내에서의 그래픽 처리에 대해 더 깊이 이해하고 있는 것 같습니다. 만약 추가적으로 궁금한 점이 있으시면 질문 남겨주세요.
assimp-vc143-mtd.dll가 없어서 코드 실행을 진행할 수 없습니다 라는 에러가 뜹니다.
0
79
1
Model.cpp에서 ReadMaterial()의 SpecularTexture 부분 질문입니다.
0
56
0
노멀매핑 자료
0
74
1
셰이더 인텔리센스 문제
0
79
1
4강 삼각형띄우기 오류관련 질문있습니다
0
66
1
64.애니메이션 강의의, AssimpTool 에서 FBX 애니매이션 데이터를 옮길 때의 강의 오류가 있는 것 같습니다.
1
65
1
SkyDemo에서 카메라 입력이 작동하지 않는 문제
0
83
2
섹션6. DirectX 11 3D 입문 강의부터 렌더링이 안됩니다
0
131
2
텍스처와 UV 강의 관련해서 문의드려요
0
162
2
frame간 보간에 대해서 질문이있습니다.
1
132
1
자료 pptx가 아닌 pdf
0
109
1
어디에 좀더 집중해야하나 고민입니다
0
201
1
CameraPosition 질문있습니다
1
113
1
안녕하세요 roatation 행렬 질문있습니다.
1
155
2
'C\ .... ......lib'은 올바른 win32에플리케이션이 아닙니다.
0
523
4
버텍스버퍼 실습 도중 버그
0
176
1
물방울 책 실습은 어디까지 하는건가요??
0
404
2
리소스매니저의 get함수에서 에러가 나요
0
133
2
자식 GameObject SetPosition 시 움직이지 않음
0
101
1
강의 끝나고 3D 포폴
0
317
2
공부 방법에 대해서 문의 드려요
0
154
1
19분 5초에 함수 구현부 한꺼번에 만드는법
1
151
1
좌표계 변환 행렬이랑 srt 변환 행렬
0
205
2
SRT 행렬중에 ppt 질문 있습니다.
0
168
1





