Physics interpolation для поворота

Физика в Unity

Physics interpolation для поворота

Сообщение Nialit 30 янв 2013, 18:17

Товарищи, интерполирует движение хорошо, но повороты - не интерполируются(дергает).
Использую в FixedUpdate:

rigid.MoveRotation(rottow);

rottow рассчитывается в Update, с помощью Time.fixedDeltaTime:
rottow = Quaternion.RotateTowards (transform.rotation, finalrotation, rotationSpeed * Time.fixedDeltaTime);

Поворот не сглаживается, что делать?

Сначала использовал rigid.MoveRotation(rottow); в Update с time.deltatime, однако тогда при физической интерполяции во время столкновения поворот в рез-те столкновения не симулируется, а при экстраполяции -осуществляет неестественно(слишком круто поворачивает), без интерполяции поворот производился нормально.

Помогите, пожалуйста, товарищи разработчики! :)
Nialit
UNец
 
Сообщения: 25
Зарегистрирован: 21 янв 2013, 04:11

Re: Physics interpolation для поворота

Сообщение Kayler 30 янв 2013, 18:49

Quaternion.Lerp
Аватара пользователя
Kayler
Адепт
 
Сообщения: 1038
Зарегистрирован: 25 авг 2010, 23:49
Откуда: Чувашия

Re: Physics interpolation для поворота

Сообщение Nialit 30 янв 2013, 18:56

У меня же скорость поворота расчитывается с помощью maxdegreesdelta, где я могу использовать Lerp?
Nialit
UNец
 
Сообщения: 25
Зарегистрирован: 21 янв 2013, 04:11

Re: Physics interpolation для поворота

Сообщение Nialit 30 янв 2013, 19:16

Ваш совет помог, теперь глаже)) Благодарю :)

Однако это, по всей видимости, не имеет прямого отношения к интерполяции, это приурочивание FixedUpdate к текущим на момент обработки физики показателям кватерниона из Update, но не интерполяция возможностями физ. движка. Т.е гладкость одинаковая, что с интерполяцией, что без. Без физики - поворот определенно гладкий.
Nialit
UNец
 
Сообщения: 25
Зарегистрирован: 21 янв 2013, 04:11


Вернуться в PhysX

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

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