Остановка Rigidbody объекта

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Остановка Rigidbody объекта

Сообщение axpehuct 03 сен 2018, 17:32

Доброго времени суток!
Имеется некий механизм, который по механике похож на некий телескоп. Т.е он состоит из 3 цилиндров расположенные друг в друге(как матрешка). Выдвижение маленькихцилиндров из большего я реализовал. Осталось сделать так, чтобы маленькие цилиндры не выдвигались бесконечно, нужен ограничитель. По идее стоит использовать, что-то вроде Collider.OnTriggerEnter(Collider), но проблема в том, что если бы было 2 цилиндра-то это сработало бы. Но как я понял данная функция срабатывает на любой коллайдер, который заходит в триггерную зону, в связи с этим она будет срабатывать как на средний цилиндр так и на самый маленький. Как обойти можно это?
И как я представляю, если я остановлю цилиндр с помощью данной функции, то он будет находиться в триггер зоне, как мне потом сделать, чтобы он снова мог двигаться в обратную сторону по нажатию кнопки мыши?
axpehuct
UNец
 
Сообщения: 3
Зарегистрирован: 30 авг 2018, 19:45

Re: Остановка Rigidbody объекта

Сообщение Anonymyx 03 сен 2018, 17:50

Может просто ограничивать локальные координаты через Mathf.Clamp()?
Сделать для для этого тела отдельный класс, засунуть туда все три цилиндра и там контролировать смещение.
Аватара пользователя
Anonymyx
Адепт
 
Сообщения: 1973
Зарегистрирован: 05 апр 2015, 15:55


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19