수학 #4 [벡터 정규화]

영따리(황재진)·2022년 7월 20일
0

수학

목록 보기
4/5

벡터의 크기를 1로 만들어 단위벡터로 만드는 과정을 정규화 라고 합니다.

이는 매우 중요한 개념이니 잘 알아두시기 바랍니다.

추후 증명이나, 실제 게임개발에도 아주 많이 이용됩니다.


공식

N=VV\vec N={\vec V \over {||\vec V||}}

증명

정규화된 벡터의 길이가 1임을 증명해보겠습니다.

V=(x,y,z)\vec{V}=(x_, y, z)라고 정의해봅시다.

그러면 V=x2+y2+z2||\vec{V}||=\sqrt{x^2+y^2+z^2} 라고 할 수 있습니다.

그럼 위 공식에 따르면 정규화 벡터를 아래 식과 같이 표현할 수 있습니다.

N=(xx2+y2+z2,yx2+y2+z2,zx2+y2+z2)\vec{N}=\left( {{x}\over{\sqrt{x^2+y^2+z^2}}} ,{{y}\over{\sqrt{x^2+y^2+z^2}}},{{z}\over{\sqrt{x^2+y^2+z^2}}}\right)

그럼 벡터의 길이는 아래 식과 같이 표현할 수 있습니다.

N=(xx2+y2+z2)2+(yx2+y2+z2)2+(zx2+y2+z2)2||\vec{N}||=\sqrt{ \left({{x}\over{\sqrt{x^2+y^2+z^2}}}\right)^2+ \left({{y}\over{\sqrt{x^2+y^2+z^2}}}\right)^2+ \left({{z}\over{\sqrt{x^2+y^2+z^2}}}\right)^2 }
N=x2x2+y2+z2+y2x2+y2+z2+z2x2+y2+z2||\vec{N}||=\sqrt{ {{x^2}\over{x^2+y^2+z^2}}+ {{y^2}\over{x^2+y^2+z^2}}+ {{z^2}\over{x^2+y^2+z^2}} }
N=x2+y2+z2x2+y2+z2=1=1||\vec{N}||=\sqrt{ {{x^2+y^2+z^2}\over{x^2+y^2+z^2}} }=\sqrt{1}=1
profile
프로그래밍, 쉐이더 등 이것저것 다해보는 게임 개발자입니다

0개의 댓글