수학
내적과 외적
Vetenir
2025. 2. 18. 21:55
주의
- 내적과 외적은 이름만 비슷하고 다른 것이다.
- 반의어도 아니다.
내적
내적은 두 벡터를 하나의 스칼라 값으로 변환하는 연산.
- A⋅B = | A || B | cosθ
- 연산은 벡터의 방향성과 크기를 고려하여 이루어진다.
- 두 벡터의 방향이 같을 수록 내적 값은 커진다. (1에 가까워짐.)
- 두 벡터의 방향이 다를 수록 내적 값은 작아진다. (0에 가까워짐.)
- 즉, 내적이 1이면 각도가 0이고 완전히 같은 방향, 내적이 0이면 각도가 90° 다.
외적
두 벡터가 이루는 평면에 수직인 벡터 값.
- |A × B| = | A || B | sinθ
- 2차원 공간
- 외적 결과가 양수면 벡터 B가 벡터 A를 기준으로 반시계 방향.
- 외적 결과가 음수면 벡터 B가 벡터 A를 기준으로 시계 방향.
- 외적 결과가 0이면 두 벡터가 동일한 선상에 있음 (일직선)
- 3차원 공간
- 왼손 좌표계, 오른손 좌표계가 존재.
- DirectX, Unreal Enigne, Unity는 왼손 좌표계.
- OpenGL 오른손 좌표계.
게임에서 내적과 외적...
내적
- 플레이어와 대상 물체 간의 전후방 판별
- 플레이어의 시야각내에 물체 방향 판별
외적
- 방향 판별 (2D 게임에서 왼쪽/오른쪽 판별)
- 표면의 법선 벡터 계산 (3D 게임에서 충돌 및 조명 처리)