← Все вопросы

Что такое коллизия (столкновение) в играх простыми словами?

Задан 33 месяца назад1.5к просмотров2 ответа
8

Постоянно встречаю слово «коллизия» в туториалах по играм. Что это значит простыми словами и почему герой не проваливается сквозь пол?

2 ответа

13
✓ Принятый ответ — помог автору

Коллизия — это умное слово для «два предмета столкнулись/коснулись». 💥

Представь: ты идёшь и упёрся в стену. Дальше нельзя — стена не пускает. В игре компьютер всё время проверяет: «а герой случайно не врезался во что-нибудь?» Эта проверка и есть коллизия.

Как игра понимает, что было столкновение? Вокруг каждого предмета рисуют невидимую коробку (её называют хитбокс). Игра смотрит: пересеклись ли две коробки? Если да — значит, столкнулись! 📦📦

Зачем это нужно:

  • герой не проваливается сквозь пол — его коробка упирается в коробку пола;
  • герой не проходит сквозь стену;
  • когда коробка героя касается коробки монетки → +1 очко;
  • когда коробка героя касается коробки врага → минус жизнь! 💔

Код примерно такой:

если коробка_героя пересекается с коробкой_монетки:
    очки = очки + 1
    убрать монетку

Частая ошибка: коробку рисуют слишком большой, и герой «цепляется» за воздух рядом с врагом. Поэтому хитбоксы аккуратно подгоняют под картинку. В хороших движках коллизии считаются автоматически — красота! 🎮

4

Коллизия = столкновение двух объектов в игре. Вокруг каждого есть невидимая рамка, и игра проверяет, пересекаются ли рамки.

Именно благодаря коллизиям герой стоит на полу, а не падает в бездну, и не проходит сквозь стены. А ещё по коллизиям ловят моменты «подобрал монетку» и «коснулся врага».

Иногда специально отключают коллизию у облаков или фоновых деталей — сквозь них ведь надо проходить. ☁️

Ваш ответ

, чтобы ответить на вопрос.