Войти
Box2DФорумОбщее

Нежелательная тряска конструкции

#0
17:53, 22 сен. 2013

Возникла проблема с Box2d,
нашел поиском что я не первый
http://www.gamedev.ru/community/box2d/forum/?id=128143
однако решения там не увидел

вот то, что начал  делать
JungleTower-prototype

Когда в башне несколько объектов ставятся друг на друга, она начинает трястись, что иногда даже приводит к разрушению конструкции

Подскажите пожалуйста, как решить данную проблему


#1
19:31, 22 сен. 2013

разрешено ли у тебя "засыпание" объектов? allow sleeping или как-то так было. если нет, то стоит включить.

если включено и объекты не засыпают, а играться с количеством итераций не вариант,
то попробуй потюнить упругость (чтобы колебания быстрее гасились).

ну и демпинг (см. b2BodyDef), куда же без него. если хорошо подобрать то в совокупности с остальным поможет.

#2
1:33, 23 сен. 2013

Спасибо за ответ,
Из того что ты посоветовал ключевое значение сыграла упругость, при 0 значении как у меня было выставлено колебания не гасились,
теперь гасятся,

однако, полностью проблему решить пока не удалось,
хотя снижение не желательных колебаний более чем существенно

#3
18:23, 28 сен. 2013

  В моем посте на который ты дал ссылку выше я решил вопрос замораживанием объектов через некоторое время. Если через некоторое время ничего не произошло/взорвалось/сработало, то я морожу все на сцене. Кстати тогда это был флешевый порт бокса, в сишном такая же беда?

#4
22:27, 28 сен. 2013

Основная проблема с замораживанием объектов - это их размораживание при малейшем воздействии, после чего конструкция попадает опять в резонанс. Я бы наверное еще попробовал с манипуляцией типа объектов, то есть сначало отрисовать все строения из статических объектов, и повесить на них слушатель на получения внешнего импульса, потом уже можно выстроить зависимость силы внешнего удара с активацией определенной области и изменением типа объекта на динамический. Или можно сделать еще дополнительную функцию реализации удара взрывной волны чтоб компенсировать возможные издержки с моментом переключения типа.

Box2DФорумОбщее

Тема в архиве.