Приложение силы к объекту. (решено)

Физика в Unity

Приложение силы к объекту. (решено)

Сообщение Shi 29 дек 2010, 17:38

Существует объект имеющий коллизию и тело. Так же существует трансформ подвешенный на некотором расстоянии.
Необходимо чтобы объект плавно пришел в позицию трансформа.
Казалось бы - все просто: вычисляем разницу векторов (которая по идее когда-то станет 0, когда позиции совпадут)
Синтаксис:
  1. void FixedUpdate () 
  2. direction = target.transform.position - transform.position;  
  3. rigidbody.AddForce(direction.normalized * 100, ForceMode.Force); 

но при подобном, объект бесконечно пролетает сквозь трансформ и никогда не остановится. (тестил на обычной подвешенной сфере и объекте - кубе)
Не подскажите, как правильно сделать подобное приближение физикой (исключая прямое воздействие типа rigidbody.velocity=direction.normalized, которое так же не сработает)?
Последний раз редактировалось Shi 11 янв 2011, 11:59, всего редактировалось 1 раз.
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург

Re: Приложение силы к объекту.

Сообщение waruiyume 10 янв 2011, 09:41

Подскажу :D
(js)
Синтаксис:
Используется javascript
var tar:Transform;
private var cur:Transform;
cur = transform;
private var rig : Rigidbody;
rig = rigidbody;
private var dir:Vector3;
private var lv : Vector3;
var speed : float=30;//-должна быть больше гравитации
function FixedUpdate ()
{
dir = tar.position-cur.position;//-направление к цели
lv = (rig.velocity-dir);//-компенсация текущей скорости
dir = dir-lv;//-компенсация текущей скорости
// dir -новая цель
rig.AddForce( dir.normalized*speed*Time.deltaTime,ForceMode.VelocityChange);//-направление*скорость*время между FixedUpdate
}
 

сценка:
[unity 3D]
Скрытый текст:
HTML код для вашего блога :
Код: Выделить всё
<script language='javascript' type="text/javascript"> document.write("<iframe marginheight='0' src='http://unity3d.ru/distribution/player.php?url=http://www.mpfiles.ru/get/?29153&w=640&h=480&t=true&preview=1' height='"+(480+30)+"' width='640' frameborder='0' scrolling='no'></iframe>"); </script>
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Приложение силы к объекту.

Сообщение Shi 11 янв 2011, 11:59

Спасибо большое. Лично у меня не сработало (при условии, что цель одна, коллизии не имеет, а тело, которое нужно двигать одно и коллизию имеет), но возможно, что то не так в настройках физики проекта. Так же замечу, что для специфических решений можно использовать Configurable Joint, что я и сделал.
Аватара пользователя
Shi
UNITрон
 
Сообщения: 211
Зарегистрирован: 30 ноя 2010, 14:58
Откуда: Санкт-Петербург


Вернуться в PhysX

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

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