벡터 = 길이 + 방향
길이 = 크기 = 속도
몬스터가 플레이어에게 향하게 하려면?
플레이어가 마우스를 바라보려면?
[ 벡터에 곱셈을 활용 하는 경우 ]
곱셈을 사용해도 어짜피 방향은 동일하다. 속도를 조절하고 싶을 때 사용
[ 정규화 ]
몬스터와 플레이어가 있다고 가정한다면
몬스터가 플레이어를 따라가고 싶을 때 : P좌표 - M좌표
그런데 몬스터가 플레이어에게 가까워 진다면
자연스럽게 벡터의 길이가 짧아지므로 몹의 이속이 빨라지며
반대로 멀리 위치할 수록 벡터의 길이가 길어지므로 이속이 느려진다.
이 것을 방지하기 위해서 몬스터의 이속을 일정하게 유지 할 수 있도록 정규화를 사용한다
즉,
크기는 그냥 일정하게 하도록 해서 관심이 없는 상태이며 방향에만 관심이 있는 경우에
normalized를 사용한다.
[ 방향에는 관심없고 크기만 필요할 때 ]
방향에는 관심없고 크기만 필요할 때 Magnitude 를 사용한다.
일반적으로 물리 엔진에서의거리 계산 또는 충돌 감지 등에 사용
'Unity > Knowledge' 카테고리의 다른 글
오브젝트 조작 및 컴퍼넌트 참조 (0) | 2024.05.24 |
---|---|
Rigidbody2D - Body Type (0) | 2024.05.24 |
float.MaxValue; Time.deltaTime? (0) | 2024.05.14 |
Prefes와 Static 차이점 (0) | 2024.05.12 |
공격 시스템 구축 (0) | 2024.05.10 |