최대 1 분 소요

Vector

  • 힘과 방향을 가지고 있는 값이다.
  • V(x,y) //
  • 기준점(0,0) → V(1,2)
  • sqrt(11 + 22) = 루트5

벡터합

  • ` V1(1,2) + V2(2,2) = V(3,4)`
  • V1과 V2의 순서를 바꿔도 상관 없음
  • V1은 원래 내 위치, V2는 1프레임당 움직여야 하는 벡터 = V3이동한 위치

벡터차

  • V1(1,2) - V2(2,2) = V(-1,0)
  • V2(2,2) - V1(1,2) = V(1,0)
  • 원점을 기준으로 대칭을 이룸
  • V2는 목표위치, V1는 내 위치 = 목표위치까지 움직여야하는 벡터

스칼라곱

  • V1(1,2) * 실수(2) = V(2,4)

Normalize(벡터의 정규화)

  • 벡터의 힘이 1이 되도록 하는 것.
  • 방향벡터로만 만들어 주는 것.
    void Start()
    {
        Vector2 v2 = new Vector2(3, 4);
        Debug.Log(v2.magnitude);
    }
  • 5 = magnitude = 벡터의 힘을 나타냄
    void Start()
    {
        Vector2 v2 = new Vector2(3, 4);
        Debug.Log(v2);
        Debug.Log(v2.magnitude);
        v2.Normalize();
        Debug.Log(v2);
        Debug.Log(v2.magnitude);
    }
  • Normalize를 하면 magnitude가 1이되므로 , v2의 값도 당연히 변함

.normalized

    void Start()
    {
        Vector2 v2 = new Vector2(3, 4);
        Debug.Log(v2);
        Debug.Log(v2.normalized);
        Debug.Log(v2);
        Debug.Log(v2.magnitude);
    }
  • v2.normalized를 사용하면 v2의 원본값이 바뀌진 않고 그 순간만 normalized된 값을 보여줌
  • 이후에는 원래 값 대로 돌아옴

댓글남기기