Обнаружить хитбокс - сговор - PullRequest
0 голосов
/ 11 декабря 2018

В настоящее время я разрабатываю своего рода 2D-игру с определенной точки зрения (камера) и делаю ее похожей на 3D-игру.

Перспектива никогда не меняется (поворачивается).

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

Теперь я хочу не дать игроку столкнуться с другими сущностями (хитбоксами).Моя идея состояла в том, чтобы выполнить обнаружение коллизий, как описано ниже, а затем рассчитать пересечение, чтобы я знал, на какой стороне хитбокса сталкиваются игрок и сущность.Наконец, я установил скорость проигрывателя x или y на 0, в зависимости от того, где происходит перекрытие.

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

img

Разделение:

function getColission(a, b) {
  return (a.x <= b.x+b.sizeX && a.x+a.sizeX >= b.x) &&
         (a.y <= b.y+b.sizeY && a.y+a.sizeY >= b.y) &&
         (a.z <= b.z+b.sizeX && a.z+a.sizeZ >= b.z);
}
...