В описании вы утверждаете, что ваш объект использует Box Collider
... для 2D, вы бы предпочли использовать BoxCollider2D
.
. Как уже упоминалось, вы можете отключить конфликт между двумя указанными * 1037. * Слои через Edit
→ Project Settings
→ Physics 2D
→ Матрица столкновения слоев
Вы также можете ( и это также может быть вам интересно) отключите столкновения между объектами одного и того же слоя здесь.
Возможно, не ваш точный вариант использования, но таким образом вы также можете, например, игнорировать столкновения между всеми врагами, но по-прежнему разрешать каждому Враг может столкнуться с полом и объектами пользователя.
В качестве альтернативы вы также можете сделать то же самое во время выполнения, используя Physics2D.IgnoreLayerCollision
и, например, также временно включить и отключить эти столкновения
Physics2D.IgnoreLayerCollision(layer1Index, layer2Index, ignore);
или даже игнорировать только столкновения между двумя указанными c коллайдерами, используя Physics2D.IgnoreCollision
Physics2D.IgnoreCollision(objectA.GetComponent<Collider2D>(), objectB.GetComponent<Collider2D>(), ignore);
, где ignore
- bool
.