Плавно перемещайтесь между телами

Я не уверен, что заголовок правильный (пожалуйста, прокомментируйте, если это не так). У меня есть спрайт (прямоугольное тело), ​​и я применяю к нему силу, чтобы заставить его двигаться слева направо, а затем двигаться назад. Платформа состоит из нескольких прямоугольных блоков одинакового размера, выстроенных в ряд без расстояния между ними. То, что они образуют, представляет собой идеально прямую линию. Платформа может быть плоской или наклонной.

Что я хочу

Спрайт плавно перемещается вперед и назад по платформе.

Что происходит на самом деле

Спрайт иногда забивается в момент перехода от одного блока к другому, даже между блоками вообще нет места. Также иногда в этот момент регистрируется столкновение.

Я попытался найти и нашел что-то под названием «внутренние углы», но понятия не имею, как решить эту проблему. Есть ли способ обойти? Спасибо!


person theaws.blog    schedule 03.05.2012    source источник
comment
Существует специальный сайт обмена стеками для разработки игр: gamedev.stackexchange.com Возможно, вы захотите задать тот же вопрос и там.   -  person Ricardo Amores    schedule 03.05.2012
comment
используйте форму с закругленными углами вместо прямоугольного тела. вы можете использовать PhysicsEditor для создания формы.   -  person Chakalaka    schedule 03.05.2012


Ответы (1)


Чтобы решить эту проблему должным образом, вам нужно будет сделать свою землю из формы цепи или из ребер с их «призрачными вершинами», настроенными правильно. Обратитесь к руководству Box2D, чтобы узнать, что такое фантомные вершины. Форма цепи — это, по сути, набор фигур ребер, но она позаботится о настройке их призрачных вершин для вас.

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

Смотрите также:

http://code.google.com/p/box2d/wiki/FAQ

http://box2d.org/forum/viewtopic.php?f=3&t=3048

http://www.cocos2d-iphone.org/forum/topic/31787

http://www.cocos2d-iphone.org/forum/topic/29462

http://www.box2d.org/forum/viewtopic.php?f=3&t=8409

http://www.box2d.org/forum/viewtopic.php?f=3&t=7935

http://www.box2d.org/forum/viewtopic.php?f=8&t=7917

http://www.box2d.org/forum/viewtopic.php?f=3&t=7805

http://www.cocos2d-iphone.org/forum/topic/22084

http://www.google.com :)

person iforce2d    schedule 03.05.2012