Как отфильтровать столкновения в версии Impact.js Box2D
У меня есть несколько вопросов, касающихся реализации effect.js физического движка box2d.
Во-первых, может ли кто-нибудь объяснить мне, как лучше всего справляться с эффектами частиц, когда частицы не обязаны иметь точные физические взаимодействия? В стандартном движке box2D был collides.LITE
вариант, который, казалось, работал довольно хорошо для этой цели. Однако в box2D даже для небольшого количества частиц (скажем, 15 или около того) игра может существенно замедлиться из-за взаимодействия между частицами и друг другом, а также окружающей средой.
Связанный, но отдельный вопрос: каков наилучший способ обработки фильтрации столкновений в версии box2D. Несколько источников в Интернете объясняют, что для использования фильтрации столкновений для других реализаций box2D все, что вам нужно сделать, это определить collisionBits
а также maskBits
свойства для каждого из ваших объектов, а box2D автоматически сделает все остальное. Я попробовал именно это в версии box2D..js и не смог манипулировать коллизиями.
У кого-нибудь есть опыт с такими вещами? Большое спасибо.
1 ответ
На самом деле я сейчас работаю над некоторыми похожими проблемами. Сейчас я все еще работаю над составными объектами с фильтрацией столкновений и объектами с соединениями.
Я использовал конгломерат этого поста в блоге http://www.emanueleferonato.com/2011/08/22/step-by-step-creation-of-a-box2d-cartruck-with-motors-and-shocks/ которая не является коробочной версией box2d, поэтому синтаксис / nomiclature отключен. И этот http://liza.io/box2d-i-have-conquered-you-sort-of/ который использует версию воздействия, но является гораздо более простым примером.
В своих недавних путешествиях я обнаружил PiSpace, в котором, похоже, реализована большая часть частиц.
Пока я все выясняю, пост снова.