[Unity] Using Depth on Physics2D

1/23/2019 / Public

Tag Count: 6 / Hit: 0

유니티의 2D 물리 환경은 z axis을 고려하지 않는다. 두 물체 간 depth를 아무리 벌려놔도 충돌할 물체는 충돌한다. 하지만 단순히 Overlap을 체크하려는 용도라면 depth를 활용할 수 있다. ContactFilter2D에서 depth 체크를 지원한다.주의) Rigidbody2D의 depth를 런타임에 조정하면 depth가 떨리는 등의 예기치 못한 버그가 발생할 수 있다. 적어도 2017버전에서는 그랬다. 하지만 Collider2D의depth를 변경하는건 문제 없다. 따라서 Collider2D의 depth를 조정하려면 Rigidbody2D의 child로 두어야 한다.ContactFilter2D contactFilter;contactFilter.useDepth = true;contactFilter