![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2013
Сообщений: 11
|
Ребят выручайте
Есть класс Bot и есть класс Bullet. В каждом классе создаются соответсующие объекты. Вопрос: Как организовать проверку на столкновение? |
|
|||||
|
Я бы математикой делал. Расстояние между объектами == 0. Если объекты сложной формы - делаем как в любом шутере - хиттест-маска - правильной, удобной для расчетов формы, и по ней считаем. Удобная для расчетов форма - круг.
Если физ-движок - то там есть для этого механизмы свои, в зависимости от движка. Можно навелосипедить через хиттест, но это будет не очень производительно.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
|
Регистрация: Aug 2010
Сообщений: 22
|
Demonstr, в зависимости от того, чем представлены bot и bullet. Если AABB (ограничивающие прямоугольники со сторонами, параллельными осям координат), то, если на каждой оси расстояние между центрами прямоугольников по модулю меньше суммы их полуширин - засчитываем столкновение. Верно для случая, когда скорость пуль не велика, т.к. на больших скоростях пули могут проскакивать сквозь бота. В этом случае можно выполнять проверку чаще, т.е. разбить расстояние пройденное пулей на несколько интервалов.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 06:20. |
|
|
« Предыдущая тема | Следующая тема » |
|
|