flow-vector
article thumbnail

문제

  • 어떤 벡터 A에 수직한 노멀 벡터 N을 변환할 때, 단순히 변환행렬을 곱해 주면왜곡이 생기는 경우가 있음을 알게 되었습니다.

원인

  • 해당 경우는 벡터 A가 non-uniform scale이 될 경우 였는데 이유는 아래 그림을 보면 쉽게 알 수 있습니다.

해결

  • 결론적으로 해결방법은 변환 행렬의 Inverse-transepose를 곱해주면 해결이 됩니다.
  • 증명은 luna의 introduction to 3d game programming with directx12에서 참고 하였습니다.

 

'Math > Game Math' 카테고리의 다른 글

게임 수학 - 무게중심 좌표  (1) 2023.12.18
게임 수학 - 내적(Dot Product)  (0) 2023.11.30
게임 수학 - 아핀 공간  (0) 2023.11.28
게임 수학 - 행렬  (1) 2023.11.22
게임 수학 - 삼각함수  (1) 2023.11.21
profile

flow-vector

@flow-vector

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!