Только Интегрируя обнаружение коллизий Box2D в моем 2-м механизме?

Я интегрировал box2d в своем механизме, (Отладка Тянут, и т.д.), и с миром я могу добавить некоторые 2-е квадраты/прямоугольники и т.д.

Я видел это сообщение, где пользователь в основном не использует мир для обнаружения коллизий, однако пользователь ничего не объясняет о том, как он использует коллектор (b2Manifold) и т.д.

Другое сообщение, находится на cocos2d форуме, (прокрутите вниз пользователю Lam в третьем ответе),

Кто-либо мог помочь мне немного с этим?, в основном хочу добавить обнаружение коллизий без потребности использования b2World и т.д. и т.д.

Большое спасибо!

5
задан Goles 5 May 2010 в 23:03
поделиться

1 ответ

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

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

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

2
ответ дан 15 December 2019 в 00:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: