Не работает OnTriggerEnter2D в Unity2D (C#)
У меня в коде не работает OnTriggerEnter2D Никаких ошибок вроде-бы нету, но код не работает. Название тега несколько раз проверял и менял, как на системные, так и на свои. На обоих объектах имеются 2D коллайдеры. На оба объекта пробовал ставить и убирать istrigger, но всё равно не работает. Вот код:
private void OnTriggerEnter2D(Collider2D collision)
{
if (collision.tag == "balka")
{
GameOver();
}
}
Дебаг тоже не выводится где бы я его не ставил
private void OnCollisionStay2D(Collision2D collision)
{
Debug.Log("gameover");
if (collision.gameObject.tag == "balka")
{
Debug.Log("gameover");
GameOver();
}
} ```
Ответы (1 шт):
В документации Unity есть таблица, где указано коллайдеры какого типа могут взаимодействовать: Interaction between collider types. Сверься с ней и убедись, что два твоих коллайдера/триггера имеют подходящий тип и измени их по необходимости.
P.S.: Обычно хватает добавления компонента Rigidbody/Rigidbody2D на один из взаимодействующих объектов. Ещё нужно поставить компоненту Rigidbody/Rigidbody2D галочку isKinematic, чтобы он не реагировал на физическое воздействие.