유니티(Unity) 오브젝트 다중 콜라이더 충돌 판별 몇가지 방법
유니티(Unity) 오브젝트 다중 콜라이더 충돌 판별 몇가지 방법
한 오브젝트의 계층에 여러개의 콜라이더가 존재할때 충돌 콜라이더 구별방법
void OnCollisionEnter(Collision collision)
{
Collider hitCollider = collision.contacts[0].thisCollider;
if (hitCollider.name == "Collider1")
{
Debug.Log("Collider1과 충돌");
}
else if (hitCollider.name == "Collider2")
{
Debug.Log("Collider2와 충돌");
}
}
void OnTriggerEnter(Collider other)
{
if (other.GetType() == typeof(BoxCollider))
{
// BoxCollider와 충돌했을 때 처리
}
else if (other.GetType() == typeof(SphereCollider))
{
// SphereCollider와 충돌했을 때 처리
}
else if (other.GetType() == typeof(MeshCollider))
{
// MeshCollider와 충돌했을 때 처리
}
}
void OnTriggerEnter(Collider other)
{
BoxCollider boxCollider = other as BoxCollider;
if (boxCollider != null)
{
// BoxCollider와 충돌했을 때 처리
}
else if (other is SphereCollider sphereCollider)
{
// SphereCollider와 충돌했을 때 처리
}
else if (other is MeshCollider meshCollider)
{
// MeshCollider와 충돌했을 때 처리
}
}