Unity magnitude & sqrMagnitude

먼저 magnitude 와 sqrMagnitude을 이해하기 위해서는 벡터의 대한 개념을 알고 가야 한다

 

벡터란

크기와 방향을 갖는 물리량이며 이때, 크기만 갖는 물리량은 스칼라 라고 부른다

 

위 사진에서 tail을 시작점, head가 끝나는 부분을 종점이라고 부르며, 이 둘의 사이의 거리가 벡터의 크기가 된다

 

본론으로 돌아와서

magnitude는 인자로 들어온 벡터의 길이를 반환하는 녀석이다

Vector3.Magnitude(x)

이렇게 x가 인자로 들어오면 이 x를 벡터의 길이로 반환해서 돌려준다

 

magnitude는 주로 두 벡터간의 거리를 구할 때 사용한다

벡터의 길이는 √(x*x + y*y + z*z) 의 제곱근이다

magnitude는 정확한 거리를 알고 싶을 때 사용된다

 

 

sqrMagnitude는 인자로 들어온 벡터의 길이를 제곱해서 반환해주는 녀석이다

Vector3.SqrMagnitude(x)

위와 같이 x가 인자로 들어오면 x를 제곱해서 돌려준다

주로 물체가 이동하는 속도를 계산할 때 사용된다

루트 연산을 하지 않아 연산속도가 빠르다는 장점이 있지만 정확한 거리를 측정하지 않는다