유니티에서 콜라이더의 충돌 무시(Physics.IgnoreCollision)

유니티에서 콜라이더의 충돌 무시(Physics.IgnoreCollision)

Physics.IgnoreCollision(collider1, collider2) 함수는 충돌 감지 시스템이 collider1과 collider2 사이의  충돌을 무시하도록 설정합니다.
https://docs.unity3d.com/ScriptReference/Physics.IgnoreCollision.html
1)충돌에 사용할 두개의 오브젝트를 생성합니다(sphere1, sphere2)


2)예에서 Sphere1의 콜라이더를 트리거로 설정하고(isTrigger 체크) 리지드바디 컴포넌트를 추가하였습니다.


3)Sphere2의 콜라이더에서 isTrigger 속성을 체크해제하고 리지드바디 컴포넌트를 추가하지않았습니다.


4)Sphere1의 스크립트에서  스피어 오브젝트가 x축으로 이동하고 충돌이 발생하면 충돌한 오브젝트를 제거하도록 하였습니다.


5)게임을 실행하여 확인합니다. sphere1가 x축으로 이동하다가 sphere2와 충돌하면 sphere2를 제거합니다.


6)씬에 새로운 게임 오브젝트를 생성하고 스크립트를 추가합니다. 시작 함수에서 호출한 IgnoreCollision 함수는 충돌 이벤트에서 사용자가 설정한 두 콜라이더를 제외합니다.

 

7)인스펙터에서 두개의 게임오브젝트를 참조합니다.


8)게임을 시작하고 두 오브젝트의 콜라이더가 서로 진입하여도 OnTriggerEnter 함수가 호출되지않은것을 확인할수있습니다.

댓글

Designed by JB FACTORY