Обнаружение стороны столкновения - PullRequest
0 голосов
/ 21 октября 2018

Я использую awt, и он отлично работает.Однако мне нужно обнаружить сторону , что один объект касается другого.Для прямоугольника это была бы простая математика, однако для другой фигуры (скажем, текста) это не так просто.

Например, у меня есть «игрок» (форма прямоугольника), который перемещается склавиши со стрелками и текст с полем столкновения, совпадающим с текстом (форма, соответствующая тексту).

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

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

Другими словами, если кто-то создал произвольную фигуру с двумя прямоугольниками внутри,но центр между ними пуст, я хочу определить, с какого лица произошло столкновение.Итак, если у меня есть левый прямоугольник с правой стороны, я хочу знать, что я ударил правой стороной, и если я ударил правый прямоугольник с левой стороны, я хочу знать, что я ударил левой стороны.

Возможно ли это?И если да, то практично ли это?

1 Ответ

0 голосов
/ 21 октября 2018

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

Вам нужно будет создать специальный наборформировать объекты для каждой буквы в соответствии с ее формой, где каждая форма представляет собой простую выпуклую форму, которую можно легко проверить.

...