벡터의 종류
- Vector2: 2차원 벡터. x와 y 좌표로 구성됩니다. 주로 2D 게임에서 위치, 이동, 방향 등을 나타낼 때 사용됩니다.
- Vector3: 3차원 벡터. x,y,z 좌표로 구성됩니다. 3D 공간에서의 위치, 이동, 방향등을 나타낼 때 사용됩니다.
벡터의 연산
- 덧셈 및 뺄셈: 두 벡터를 더하거나 뺄 수 있습니다. 이는 두 위치 간의 상대적 위치를 구하거나 방향 벡터를 계산할때 사용됩니다.
Vector3 result = vectorA + vectorB;
- 스칼라 곱: 벡터와 스칼라(방향이 없는 단순히 크기를 나타내는 숫자)를 곱하여 벡터의 크기를 조절할 수 있습니다.
Vector3 scaledVector = vectorA * 2.0f;
- 내적: 두 벡터의 내적은 두 벡터 사이의 각도를 계산하는데 사용되며, 결과는 스칼라 값입니다. 내적이 0이면 두 벡터는 서로 90도입을 나타냅니다.
float dotProduct = Vector3.Dot(vectorA, vectorB);
- 외적: 두 벡터에 직교하는 벡터를 반환합니다. 주로 3D 공간에서의 법선 벡터를 계산할 때 사용됩니다.
Vector3 crossProduct = Vector3.Cross(vectorA, vectorB);
벡터의 크기 및 정규화
- 크기: 벡터의 크기는 벡터가 얼마나 긴지를 나타냅니다.
float magnitude = vectorA.magnitude;
- 정규화: 벡터를 정규화하면 벡터의 방향을 유지하면서 크기를 1로 만듭니다. 정규화된 벡터는 주로 방향을 나타낼 때 사용됩니다.
Vector3 normalizedVector = vectorA.normalized;
주요 메소드
- Vector3.Lerp: 두 벡터 사이를 보간하여 중간 값을 계산합니다.
Vector3 interpolatedVector = Vector3.Lerp(vectorA, vectorB, 0.5f);
- Vector3.Distance: 두 벡터 간의 거리를 계산합니다.
float distance = Vector3.Distance(vectorA, vectorB);
- Vector3.Angle: 두 벡터 간의 각도를 계산합니다.
float angle = Vector3.Angle(vectorA, vectorB);
'Unity' 카테고리의 다른 글
[Unity] UI 카메라 추적 방법 (UI Camera Tracking) (0) | 2024.08.28 |
---|---|
[Unity] Auto Scrolling Text 기능 (Feat. DOTween) (0) | 2024.08.26 |
[Unity] 피봇(Pivot) & 앵커(Anchor) (0) | 2024.08.21 |
[Unity] EventSystem 인터페이스 (0) | 2024.08.10 |
[Unity] 회전각을 제한하는 경우 각도가 급작스럽게 바뀌는 이슈 (0) | 2024.08.03 |