Обнаружение столкновения на повернутом изображении - PullRequest
1 голос
/ 13 марта 2012

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

Ответы [ 4 ]

2 голосов
/ 13 марта 2012

Если повернутый объект является объектом, реализующим интерфейс Shape, он может иметь полезную реализацию метода contains().

1 голос
/ 14 мая 2012

Пиксельное обнаружение столкновений, т.е.обнаружение столкновений между изображениями, как правило, действительно трудно сделать эффективно.По этой причине, как правило, рекомендуется использовать существующую оптимизированную библиотеку, созданную для этой цели.

Поскольку вам также требуется поддержка повернутых изображений, я рекомендую PoxelColl .Он поддерживает идеальное обнаружение столкновений, а также базовые преобразования, такие как масштабирование и поворот.Он предоставляет порт Scala, совместимый с Java.

1 голос
/ 13 марта 2012

В paint (), когда вы готовитесь рисовать движущееся изображение, проверьте цвета пикселей точек назначения и найдите цвет (ы) целевого объекта. Разумеется, движущееся изображение и целевой объект должны быть разных цветов.

0 голосов
/ 14 марта 2012

Что именно вы используете для границ столкновения вашего астероида?

Самым простым может быть то, что вы можете просто использовать круги для всего и реализовать обнаружение столкновений окружности с окружностью (просто Google). Это может не понравиться визуально, если ваши изображения не такие крутые, как.

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

Другим вариантом может быть обнаружение столкновения с идеальным пикселем, о котором говорил Чак . Быстрый поиск обнаружил этот форум post . Продолжайте с осторожностью, однако, эффективность этого метода ухудшается с размером ваших изображений.

...