유니티를 사용하기 위해서는 좌표계를 알아야하고 좌표계에서의 벡터값의 변화와 계산하는 법등을 알고 있어야 합니다.
힘의 크기(Scalar)와 방향을 나타내는 것을 말합니다. 보통 표기를 (x, y, z)라고 하고 (0, 0, 0)에서 (x, y, z) 방향으로 화살표를 그어서 표시합니다. 이 때 이 벡터의 크기는 원점부터의 거리입니다.
크기가 1인 벡터를 말합니다. 크기를 1로 맞추어서 방향만을 사용하기 위해 만드는 벡터입니다. 방향벡터를 다른 벡터와 곱해도 벡터의 크기가 달라지지 않습니다. 어떤 벡터에 방향만을 주고 싶을 때 단위벡터를 곱해서 사용합니다.
벡터를 단위 벡터로 만드는 작업입니다. 벡터에 벡터의 크기를 나누어 벡터자체의 크기를 0으로 만듭니다.유니티에서는 오브젝트의 속도를 방향에 따라서 바뀌지 않게 하기 위해서 하는 작업입니다. 정규화하는 작업 자체가 무겁기 때문에 너무 남발하면 안됩니다.
(x, y, z) / Root(x^2 + y^2 + z^2)
벡터끼리의 연산은 일반 연산들과 차이점이 조금 있기 때문에, 따로 알아둬야 합니다.
(x1, y1, z1) + (x2, y2, z2) = (x1 + x2, y1 + y2, z1 + z2)
(x1, y1, z1) - (x2, y2, z2) = (x1 - x2, y1 - y2, z1 - z2)
(x, y, z) * a = (ax, ay, az)
(x, y, z) / a = (a / x, a / y, a / z)
벡터와 벡터의 곱하기는 내적(Dot Product)과 외적(Cross Product)으로 구분됩니다.
각 항목끼리 곱한 후에 더합니다. 따라서 내적의 결과는 스칼라가 나옵니다.
(x1, y1, z1) * (x2, y2, z2) = x1x2 + y1y2 + z1z2
외적의 방법은 행렬곱과 비슷합니다. 그리고 결과는 벡터가 나오는데 외적한 두 벡터가 만드는 평면에 수직한 벡터가 나옵니다. 수직한 벡터는 2개인데 곱하는 순서(왼손 법칙)에 따라 결정됩니다. 유니티에서는 삼각형(Polygon)의 앞면과 뒷면을 구분할 수 있게 해줍니다.
(x1, y1, z1) X (x2, y2, z2) = (y1z2 - z1y2, z1x2 - x1z2, x1y2 - y1x2)