Unity 매뉴얼: 스피어 콜라이더 (Sphere Collider)
개요
스피어 콜라이더(Sphere Collider)는 Unity에서 제공하는 기본적인 충돌 감지 프리미티브로, 구체 형태의 오브젝트에 적합합니다. 이 컴포넌트는 물리 엔진의 충돌 감지 시스템과 통합되어 사용됩니다.
주요 프로퍼티
프로퍼티 | 기능 설명 |
---|---|
Is Trigger | 이 옵션을 활성화하면 콜라이더가 이벤트를 트리거하는 데 사용되며, 물리 엔진의 적용을 받지 않습니다. |
Material | 콜라이더가 다른 콜라이더와 상호작용하는 방법을 결정하는 물리 머티리얼에 대한 레퍼런스입니다. |
Center | 오브젝트의 로컬 공간에서 콜라이더의 위치를 설정합니다. |
Radius | 콜라이더의 크기를 설정합니다. |
크기 조절 및 제한 사항
- Radius 프로퍼티를 통해 스피어 콜라이더의 크기를 조절할 수 있습니다.
- 구체는 세 축을 따라 각각 스케일되지 않으므로, 구 형태의 오브젝트로 사용되는 것이 이상적입니다. 즉, 구체를 타원으로 변형하거나 납작하게 만들 수는 없습니다.
활용 예제
1. 캐릭터와 적의 충돌 처리
캐릭터와 적이 충돌 시 특정 이벤트를 발생시키기 위해 Is Trigger
를 활성화 한 후, 관련 코드를 작성합니다.
void OnTriggerEnter(Collider other) {
if (other.CompareTag("Enemy")) {
// 적과 충돌 시 처리할 코드
}
}
2. 물리 기반의 구체 오브젝트
테니스 공과 같이 구 형태의 오브젝트를 만들고, 물리 엔진의 영향을 받도록 설정하여 낙하하거나 굴러가는 동작을 구현합니다.
// 스피어 콜라이더와 리지드바디 추가
Rigidbody rb = gameObject.AddComponent<Rigidbody>();
SphereCollider sc = gameObject.AddComponent<SphereCollider>();
요약
스피어 콜라이더는 물리 기반의 게임에서 매우 유용한 기능을 제공합니다. 기본적인 충돌 감지에서부터 이벤트 트리거링까지 다양한 활용이 가능하며, 개발자는 이를 통해 더욱 풍부한 게임 메커니즘을 구축할 수 있습니다.