Столкновение Unity3d с сеткой

#unity3d #collision-detection

#unity-game-engine #обнаружение столкновения

Вопрос:

Я новичок в Unity3D и я почти уверен, что нечто подобное задавалось раньше, но, видимо, я неправильно гуглю.

Я пытаюсь решить следующую проблему: у меня есть автомобиль и дорожные игровые объекты. Игрок может управлять автомобилем сверху вниз. Я хочу определить, когда автомобиль съезжает с дороги.

Итак, я создал сетчатый коллайдер вокруг дороги, чтобы обнаруживать столкновения в OnCollisionEnter() :

введите описание изображения здесь

Поскольку у игрового объекта RoadBoundry нет компонента жесткого тела, я ожидаю, что автомобиль просто пройдет через него, однако он взаимодействует с ним странным образом:

введите описание изображения здесь

Почему car таким образом взаимодействует с сеткой и как обнаружить столкновение в моем случае?

Ответ №1:

Проверьте коллайдер в качестве триггера

запуск

Затем используйте OnTriggerEnter событие.


К вашему сведению, есть более простой способ, используйте Physics.Raycast to the ground и присвоите path collider специальный тег / или специальный слой.

Комментарии:

1. Спасибо за предложение, но я не могу сделать это с помощью Mesh Collider. Как вы можете видеть на изображении, флажок триггера отключен.

2. Также необходимо проверить выпуклость, тогда вы сможете использовать не весь меш целиком, а разбить его на части.