법선 벡터란?
- 법선(Normal)은 충돌한 면에 수직인 단위 벡터
- 일반적으로 충돌 시 Collision2D.contacts.normal을 통해 접근 가능
- 이는 충돌 지점의 반대 방향으로 볼 수 있음
Unity에서 법선 벡터는 어떻게 계산되는가?
1. 법선 벡터의 기준은 충돌면
- 법선 벡터는 충돌점을 기준으로 오브젝트의 "바깥" 을 가르킴
- 오브젝트에 충돌한 다른 오브젝트를 밀어내는 방향으로 볼 수 있음
2. 법선 벡터는 '충돌 지점에서 수직 방향'
- 예를 들어 벽 왼쪽면에 충돌했을 때의 법선은 (-1, 0)
→ 힘이 왼쪽에서 들어왔음으로 왼쪽 법선 형성
3. 오브젝트 별 법선 계산 기준
- Box 및 Sphere 등 콜라이더는 내부에서 중심점을 가지고 있음
- 중심점을 기준으로 오브젝트의 "바깥"을 계산
- Mesh Collider의 경우 Mesh 자체에 방향을 가지고 있음
- Mesh를 구분 없이 사용해도 Normal을 바꿀수 있으니 문제 없음
'Unity > 기능' 카테고리의 다른 글
| [Unity] Getter와 반환 매서드의 차이점 (0) | 2025.05.26 |
|---|---|
| [Unity] NavMesh - SamplePosition (0) | 2025.05.23 |
| [Unity] 2D 게임에서 카메라 영역 제한하기 (2) | 2025.05.19 |
| [Unity] nameof 를 이용한 스크립트 관리 (1) | 2025.05.09 |
| [Unity] 제네릭(Generic) 을 통한 상속 (0) | 2025.05.08 |