Воздействие на объект при добавлении AddForce[РЕШЕНО]

Физика в Unity

Воздействие на объект при добавлении AddForce[РЕШЕНО]

Сообщение Angel 07 26 окт 2010, 09:36

Проблема в следующем: есть объект, который стоит на ровной поверхности. По клику мышки к объекту применяется метод AddForce вдоль вектора, который имеет нулевую координату по оси Y. По идее после этого объект должно толкнуть в горизонтальной плоскости. Однако происходит нечто другое, объект начинает движение в нужном направлении, но при этом в самом начале подпрыгивает вверх, то есть он так прыжок вверх - и полетел. Причем то же самое происходит, когда AddForce применяется вообще с нулевым вектором. Объект просто подпрыгивает, и падает обратно на землю. На оба объекта (поверхность и собственно сам объект) присвоены физические материалы с нулевой упругостью. В чем причина? может кто встречался с подобным.
Последний раз редактировалось Angel 07 27 окт 2010, 18:45, всего редактировалось 1 раз.
_ttp://shekn.deviantart.com/
Аватара пользователя
Angel 07
UNIверсал
 
Сообщения: 367
Зарегистрирован: 02 окт 2010, 18:58

Re: Воздействие на объект при добавлении AddForce

Сообщение GrueGames 26 окт 2010, 10:28

Попробуйте создать объект немного приподнятым в воздух, чтобы он сначала свободно упал на поверхность где ему предстоит лежать перед воздействием, чтобы коллайдеры точно не пересекались. Если они пересекаются - физика, когда "проснется" сначала постарается вытолкнуть один из другого.
Еще может быть проблема в свойствах объектов: при высоком трении и небольшой массе такая траектория может быть физически верной.
Аватара пользователя
GrueGames
UNITрон
 
Сообщения: 200
Зарегистрирован: 11 апр 2009, 16:42
Откуда: Samara, Russia
  • Сайт
  • ICQ

Re: Воздействие на объект при добавлении AddForce

Сообщение Angel 07 26 окт 2010, 10:42

Приподнять объект пробовал. Собственно он изначально и висит немного в воздухе, точно же не выставить его положение вручную. Масса действительна небольшая у объекта, но и статическое трение выставлено на 0. Так что это я уже попробовал.
_ttp://shekn.deviantart.com/
Аватара пользователя
Angel 07
UNIверсал
 
Сообщения: 367
Зарегистрирован: 02 окт 2010, 18:58

Re: Воздействие на объект при добавлении AddForce

Сообщение Marth 26 окт 2010, 11:11

Я может быть скажу глупость, но тем не менее.
Нулевая координата Y - значит вы как бы толкаете объект тонким лезвием в самую нижнюю его часть. Поэтому он и должен подпрыгнуть. Если же толкать его не c Y=0, а с Y равным середине объекта он подпрыгивать не должен.
Это если я все правильно понял.

boxes1.png
У вас нет доступа для просмотра вложений в этом сообщении.
Аватара пользователя
Marth
UNец
 
Сообщения: 26
Зарегистрирован: 05 мар 2010, 13:35
Откуда: Томск
  • Сайт

Re: Воздействие на объект при добавлении AddForce

Сообщение Angel 07 26 окт 2010, 13:05

Не совсем так. Аргументом в AddForce является вектор, который показывает направление воздействие. Если у него вторая координата нулевая, то это означает, что он параллелен горизонтальной плоскости. Воздействие, на сколько я понимаю, применяется к центру масс, который находится по центру объекта.
_ttp://shekn.deviantart.com/
Аватара пользователя
Angel 07
UNIверсал
 
Сообщения: 367
Зарегистрирован: 02 окт 2010, 18:58

Re: Воздействие на объект при добавлении AddForce

Сообщение Zaicheg 26 окт 2010, 13:22

Angel 07 писал(а):применяется к центру масс, который находится по центру объекта.

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

Re: Воздействие на объект при добавлении AddForce

Сообщение Marth 26 окт 2010, 13:24

Да, вы правы. Протупил, извините.
Аватара пользователя
Marth
UNец
 
Сообщения: 26
Зарегистрирован: 05 мар 2010, 13:35
Откуда: Томск
  • Сайт

Re: Воздействие на объект при добавлении AddForce

Сообщение Angel 07 26 окт 2010, 17:06

В общем оказало как раз так, как и ожидал. Несколько дней я мучился с вышеописанным глюком, стараясь найти, из-за чего же он. И только потом, когда почти уверился, что виновата всему корявая физика, решил спросить тут на форуме. И в тот же день сам нашел ответ. Началось с того, что сделал новую тестовую сцену, в которой не было ничего, кроме двух объектов, и все летало и скользило нормально. Думал уж, что это я что-то накрутил в первом проекте и надо будет заново собирать всю сцену, следя за моментом, когда же появится глюк. И тут же нашлась причина. Перед тем, как толкнуть объект, у меня на него нацеливается камера, у которой таджет сделан скрытым кубиком, с котрого не убран коллайдер. Вот и получается, что когда объекту надо двигаться, он зацепляется за скрытый кубик, и в результате этого подпрыгивает. Ну такой дурацкий косяк, что прямо неловко. Хоть извинение проси.
_ttp://shekn.deviantart.com/
Аватара пользователя
Angel 07
UNIверсал
 
Сообщения: 367
Зарегистрирован: 02 окт 2010, 18:58

Re: Воздействие на объект при добавлении AddForce

Сообщение Zaicheg 26 окт 2010, 17:52

Добавьте [РЕШЕНО] в название темы (правка заголовка первого сообщения).
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец


Вернуться в PhysX

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

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