Переместить мое тело в точку

Я использую коробку 2d. Я просто хочу переместить свое тело в точку. Каков наилучший способ сделать это?

1 ответ

Решение

Когда вы говорите, что хотите просто двигать телом, вы имеете в виду, что хотите применить силу, чтобы привести тело в точку?

Есть шарнир, разработанный для движения мыши, и он может хорошо работать в вашем случае, если вы хотите перетаскивать тела на iPhone. Он называется Mouse Joint, и он под 8.10 на этих документах box2d.

Если вы хотите, чтобы тело не реагировало на удары, а толкало его в зависимости от того, где оно находится и куда движется, переходите к b2_kinematicBody на тех же документах

Надеюсь, поможет. Ваш вопрос очень расплывчатый.

РЕДАКТИРОВАТЬ в ответ на комментарий:

Ну, в общем, способ сделать это будет cpBodyApplyForce или же cpBodyApplyImpulse, Есть много способов использовать это, чтобы переместить тело в положение, и они могут стать более сложными, чем я могу резюмировать в комментарии. По сути, вы попадаете в вещи, которые могут быть лучше освещены источниками программирования игрового ИИ.

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

Другие вопросы по тегам