오늘은 캐릭터의 이동에 필요한 Vector를 알아볼것이다.

Vector = 방향 + 크기 이다.

이 빨간색 선을 보면 둘은 똑같은 벡터이고, 시작점의 정보는 없다.

벡터의 더함은 x좌표는 x좌표끼리의 더하고 , y좌표는 y좌표끼리 더한다.
(4,1) + (1,4) 는 더하게 되면 파란색의 선처럼 마지막에 고통으로 만나게 된다. = (5,5)

뺄셈을 하게되면 주어진 A (2,4) , B (4,1) = (-2,3)이 나오게된다.
이걸 한번 그려보자면,


이렇게 삼각함수가 되게 된다. 이것을 어디에 활용을 할수있냐면,
만약 몬스터가 있고 플레이어가 있게 된다면 몬스터가 플레이어에게 다가가야 하는 상황이 오면 플레이어의 좌표에서 - 몬스터 좌표를 빼게 된다면 몬스터에서 플레이어에게 향하는 벡터의 값이 나오게 된다.

다음으로 벡터의 곱은 x좌표와 y좌표에 각각 곱하게 된다.

똑같은 시간에 벡터는 이동하려고 할때 크기가 클수록 속도가 빠를 수밖에없다.
속도를 빠르게하거나 느리게 하려면 속도를 곱해서 속도조절을 할수있다.

만약에 몬스터와 플레이어가 있을때 다가오게 하려면 P - M 을 해서 값을 구하고
이게 멀리있다면 속도가 빨라질수밖에 없다.
속도를 일정하게 하려면 정규화 라는것을 해주면 되는데
Unity 에서는 normalrize를 사용하면 방향은 유지되고 몬스터의 고유 스피드 값을 곱하게 되면 일정한 속도를 유지할수 있게 된다.

마무리로 Vector의 크기의 값을 받고싶으면 Vector3.magnitude를 사용하면 되겠고,
방향을 값을 받고싶다면 Vector3.normalrize를 사용하면 되겠다.

오늘은 캐릭터 이동에 필요한 Vector에 대해서 알아보았다.