inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[게임 프로그래머 도약반] DirectX11 입문

Normal Mapping

normal 을 월드계로 바꿀때 worldinvtranspose

해결된 질문

547

밍캬캬

작성한 질문수 7

0

대학교수업때나 물방울책에서 배울때 normal 은 worldinvtranspose 를 곱하라고 배웠는데

어떤 셰이더 책이나 선생님께서는 world 를 곱하라고 하셔서요

보통 SRT = (SRT)^-t 라서 상관없나요?

어짜피 normalize될때 상쇄될까요?

c++ directx

답변 2

0

Rookiss

이 부분은 둘 다 가능합니다.
물방울책에서도 관련 내용이 살짝 나오는데 수학 내용을 다 건너뛰면
[보간에 의해 수직이 아니게 될 수가 있어서] 추가 처리를 해주는 것이고,
관련 내용은 물방울책 310페이지를 보시면 자세한 설명이 나와 있습니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴이에요.

normal을 월드계로 바꿀 때에는 worldinvtranspose를 곱해야 한다는 내용을 대학교 수업이나 물방울책에서 배웠다고 하셨는데, 다른 셰이더 책이나 선생님들이 world를 곱하라고 하셨을 때 혼란스러우셨군요.

SRT = (SRT)^-t 는 SRT 행렬을 변환시키는 식으로서, 트랜스포즈(transpose)와 역행렬(inverse)을 사용하게 됩니다. 이와 상관없이 normal 벡터를 월드계로 바꿀 때, normal 벡터는 굳이 상쇄되지 않습니다.

normal 벡터는 표면의 방향을 나타내는 벡터이기 때문에, 변환 행렬을 곱해주는 것은 상관없지만 그 방향을 유지하기 위해서는 normal 벡터에 필요한 연산을 해주어야 합니다. 따라서, worldinvtranspose를 사용하거나 world를 사용하는 것은 normal 벡터를 월드계로 변환시키는 데 사용되는 일반적인 방법입니다. 두 가지 방법 중 하나를 선택하여 사용하시면 됩니다.

마지막으로, normalize된 normal 벡터는 벡터 자체의 크기가 1이 되므로, 상쇄된다고 말할 수 있습니다.

더 궁금한 점이 있으시면 언제든지 물어보세요. 좋은 하루 되세요!

assimp-vc143-mtd.dll가 없어서 코드 실행을 진행할 수 없습니다 라는 에러가 뜹니다.

0

87

2

Model.cpp에서 ReadMaterial()의 SpecularTexture 부분 질문입니다.

0

57

0

노멀매핑 자료

0

77

1

셰이더 인텔리센스 문제

0

81

1

4강 삼각형띄우기 오류관련 질문있습니다

0

71

1

64.애니메이션 강의의, AssimpTool 에서 FBX 애니매이션 데이터를 옮길 때의 강의 오류가 있는 것 같습니다.

1

65

1

SkyDemo에서 카메라 입력이 작동하지 않는 문제

0

84

2

섹션6. DirectX 11 3D 입문 강의부터 렌더링이 안됩니다

0

133

2

텍스처와 UV 강의 관련해서 문의드려요

0

165

2

frame간 보간에 대해서 질문이있습니다.

1

132

1

자료 pptx가 아닌 pdf

0

109

1

어디에 좀더 집중해야하나 고민입니다

0

203

1

CameraPosition 질문있습니다

1

114

1

안녕하세요 roatation 행렬 질문있습니다.

1

156

2

'C\ .... ......lib'은 올바른 win32에플리케이션이 아닙니다.

0

525

4

버텍스버퍼 실습 도중 버그

0

176

1

물방울 책 실습은 어디까지 하는건가요??

0

408

2

리소스매니저의 get함수에서 에러가 나요

0

133

2

자식 GameObject SetPosition 시 움직이지 않음

0

102

1

강의 끝나고 3D 포폴

0

320

2

공부 방법에 대해서 문의 드려요

0

155

1

19분 5초에 함수 구현부 한꺼번에 만드는법

1

154

1

좌표계 변환 행렬이랑 srt 변환 행렬

0

206

2

SRT 행렬중에 ppt 질문 있습니다.

0

169

1