Коллизии и rigidbody [РЕШЕНО]

Программирование на Юнити.

Коллизии и rigidbody [РЕШЕНО]

Сообщение BUDU_KRATOK 07 янв 2011, 23:28

Здравствуйте, комьюнити :)

Есть ГО, содержащий в себе модельку корабля, на нём висит скрипт аи, на самой модельке rigidbody с отключённым use gravity и включённой freeze rotation, и на каждом элементе модельки mesh collider с convex.
В ходе работы аи по облёту препятствия, корабль облетает его, слегка коснувшись в самой точке поворота. Из-за этого го благодаря коллайдеру и ригидбоди начинает слегка смещаться относительно своего движения. Скрин:

Изображение

По трейлам видно его направление.

Скрипт перемещения АИ работает не на addForce, а на обычном перемещении по координатам (rigidbody.position + transform.forward * силу двигателя).

При отключении коллайдера (перевод в триггер) проблема исчезает.

Как можно решить проблему смещения? Что-то связанное с материалом коллайдера? Или как можно обнулить это смещение после коллизии?
Думаю что-то связанное с rigidbody и проблема решается очень просто, но пока не нашёл решения)

:D забыл про rigidbody.velocity, он не контролировался.
BUDU_KRATOK
UNец
 
Сообщения: 29
Зарегистрирован: 06 авг 2010, 08:29

Re: Коллизии и rigidbody [РЕШЕНО]

Сообщение Zaicheg 08 янв 2011, 00:01

Просто игнорируйте коллизии между кораблём и препятствием.
Physics.IgnoreCollision
Physics.IgnoreLayerCollision
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец


Вернуться в Скрипты

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

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