Найти тему
Гиккульт

Что такое "hitbox"?

Часто при обсуждении тонкостей механик какой-нибудь игры (особенно сетевых шутеров) можно услышать термин "hitbox". Что это такое? Я постараюсь кратко рассказать.

Все игры основаны на столкновении. Пуля попадает в персонажа в скролл-шутере, мышка меняет внешний вид при попадании на интерактивный объект в классическом квесте или гриб вылетел из блока и падает на землю. Примеров много.

Чтобы реализовать такие взаимодействия между элементами игры, разработчики обычно используют упрощенную математическую модель. Персонажи представляются в виде простых геометрических фигур. Часто в виде прямоугольников (хитбоксы). Собственно при проверке столкновения персонажей проверяется не пересекаются ли их хитбоксы.

Как видно, в Super Mario Bros хитбоксы всех игровых элементов достаточно сильно отличаются от их визуальных спрайтов.
Как видно, в Super Mario Bros хитбоксы всех игровых элементов достаточно сильно отличаются от их визуальных спрайтов.

Это значительно проще, чем проверять реальное попиксельное пересечение спрайтов. И позволяет четче прописать правила этого взаимодействия. К примеру, если Марио прыгает на противника сверху, то последний погибает.

Хитбоксов у одного игрового элемента может быть много. Таким образом можно делать сложносоставных персонажей. К примеру, больших боссов со сложной анимацией.

-2

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

Видео с визуальной демонстрацией хитбоксов персонажей игры Team Fortress 2.

Спасибо за внимание :)